$ aoox

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

AlatEngineImage (versi dikunci)
AdminerMySQL, MariaDB, PostgreSQL (termasuk varian)adminer:5.4.2
phpMyAdminMySQL, MariaDBphpmyadmin:5.2.3
pgAdminPostgreSQL (termasuk varian)dpage/pgadmin4:9.18.0
Mongo ExpressMongoDBmongo-express:1.0.2-20-alpine3.19
Redis CommanderRedis, Valkeyghcr.io/joeferner/redis-commander:0.9.1
DbGateSemua enginedbgate/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

  1. Buka database → tab Ringkasan

    Database harus berjalan (kalau tidak, pemasangan ditolak 409). Setiap database punya paling banyak satu Admin UI.

  2. 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.

  3. 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

AlatCara masuk
Adminer, phpMyAdminMemakai 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, DbGateMemakai 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

Admin UI memberi akses ke seluruh isi database. DbGate, Mongo Express, dan Redis Commander sudah membawa password database di dalam container-nya, jadi siapa pun yang punya login-nya punya akses penuh. Jangan buka lewat HTTP polos di internet publik.
  • 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 aoox bila 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

GejalaPenyebab & solusi
409 saat memasangDatabase belum berjalan, atau sudah punya Admin UI. Jalankan database dulu.
409 / 400: hostname atau portHostname sudah dipakai domain lain atau Admin UI lain (409), atau port host sudah dipakai (400). Pilih yang lain.
Status error: container tidak ada lagiContainer dihapus dari luar aoox. Hapus Admin UI lalu pasang lagi.
Tidak bisa masuk ke Adminer/phpMyAdminPakai login database (bukan kredensial Admin UI); lihat kartu Koneksi internal di tab Ringkasan.
Halaman tidak terbuka lewat domainCek 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 ↗