DocsStack & database
Admin UI database
Pasang antarmuka web admin (Adminer, phpMyAdmin, pgAdmin, Mongo Express, Redis Commander, atau DbGate) untuk database terkelola dengan satu klik, lalu buka dari domain atau IP dan port.
- Di mana
- Halaman database → tab Ringkasan → kartu Admin UI
- Bentuknya
- Satu container web-admin per database, di server aoox
- Siapa
- Developer ke atas memasang; viewer tidak melihat kredensial
Apa itu
Data browser cukup untuk melihat tabel dan menjalankan query. Kalau kamu butuh alat yang lebih lengkap, aoox bisa memasang satu Admin UI per database terkelola: sebuah container web-admin populer yang berjalan di sebelah database dan tersambung ke server database itu. Container-nya bernama aoox-dbadmin-<slug> dan berjalan di host aoox.
Alat per engine
| Alat | Engine | Image (versi dikunci) |
|---|---|---|
| Adminer | MySQL, MariaDB, PostgreSQL (termasuk varian) | adminer:5.4.2 |
| phpMyAdmin | MySQL, MariaDB | phpmyadmin:5.2.3 |
| pgAdmin | PostgreSQL (termasuk varian) | dpage/pgadmin4:9.18.0 |
| Mongo Express | MongoDB | mongo-express:1.0.2-20-alpine3.19 |
| Redis Commander | Redis, Valkey | ghcr.io/joeferner/redis-commander:0.9.1 |
| DbGate | Semua engine | dbgate/dbgate:7.3.1-alpine |
Daftar alat yang tampil di dialog pemasangan menyesuaikan engine database-nya. Versi image dikunci supaya hasil pemasangan sama dari waktu ke waktu; Redis Commander diambil dari GHCR karena Docker Hub hanya punya tag latest lama.
Memasang
Buka database → tab Ringkasan
Database harus berjalan (kalau tidak, pemasangan ditolak 409). Setiap database punya paling banyak satu Admin UI.
Klik Pasang Admin UI pada kartu Admin UI
Pilih alat, lalu pilih cara membukanya:
- Domain — lewat reverse proxy dengan hostname sendiri (DNS-nya diarahkan ke server ini). Proxy dipasang otomatis bila belum berjalan; HTTPS aktif bila email ACME sudah diisi. Hostname tidak boleh sudah dipakai domain lain.
- IP & port — dipublikasikan di port host server ini, tanpa domain. Port harus belum dipakai aplikasi, database, stack, atau container lain. Defaultnya mendengarkan di
127.0.0.1(buka lewat SSH tunnel); pilih Publik di dialog hanya bila kamu menerima login admin bisa dijangkau dari internet.
Minimal salah satu harus diisi; domain dan IP & port juga boleh dipakai sekaligus, sama seperti pada aplikasi.
Tunggu status berubah dari creating ke running
Pemasangan berjalan di latar belakang; menarik image bisa memakan beberapa menit. Kalau gagal, kartu menampilkan pesan galatnya. Tombol alamat muncul setelah
running.
Login
| Alat | Cara masuk |
|---|---|
| Adminer, phpMyAdmin | Memakai login database sendiri. Ambil username dan password-nya dari kartu Koneksi internal di tab Ringkasan (tombol Tampilkan password); tidak ada password tambahan yang dibuat. |
| pgAdmin, Mongo Express, Redis Commander, DbGate | Memakai kredensial yang dibuat aoox otomatis (nama pengguna admin; pgAdmin memakai admin@example.com). Klik Tampilkan kredensial pada kartu Admin UI. pgAdmin akan menanyakan password database saat kamu menyambung ke server. |
Anggota dengan peran viewer tidak bisa melihat kredensial itu, dan tidak bisa memasang atau menghapus Admin UI.
Menghapus
- Hapus Admin UI di kartu menghentikan dan menghapus container-nya. Data database tidak terpengaruh.
- Menghapus database ikut menghapus Admin UI-nya.
- Menghentikan database tidak menghentikan Admin UI, tetapi Admin UI tidak bisa menyambung sampai database dijalankan lagi.
- Admin UI tidak ikut ekspor/impor project; pasang lagi setelah impor.
- Container Admin UI tidak punya volume: pengaturan datang dari konfigurasi aoox setiap kali dibuat, jadi tidak ada data yang hilang saat dihapus.
Keamanan
- Pakai domain dengan HTTPS untuk akses dari luar, atau IP & port hanya di jaringan tepercaya / lewat firewall.
- Adminer bisa dicoba ke host lain di jaringan
aooxbila penggunanya punya kredensial host itu. - Hapus Admin UI saat tidak dipakai, dan batasi siapa yang punya peran developer ke atas di project ini.
Jebakan umum
| Gejala | Penyebab & solusi |
|---|---|
| 409 saat memasang | Database belum berjalan, atau sudah punya Admin UI. Jalankan database dulu. |
| 409 / 400: hostname atau port | Hostname sudah dipakai domain lain atau Admin UI lain (409), atau port host sudah dipakai (400). Pilih yang lain. |
| Status error: container tidak ada lagi | Container dihapus dari luar aoox. Hapus Admin UI lalu pasang lagi. |
| Tidak bisa masuk ke Adminer/phpMyAdmin | Pakai login database (bukan kredensial Admin UI); lihat kartu Koneksi internal di tab Ringkasan. |
| Halaman tidak terbuka lewat domain | Cek DNS menunjuk ke server ini dan proxy berjalan. HTTPS butuh email ACME di pengaturan proxy. |
Langkah berikutnya
Ada yang keliru? Edit halaman ini di GitHub ↗