Lewati ke konten utama
Docker Compose

Satu container Human Plugin di satu host, terhubung ke database PostgreSQL Anda.

Markdown

Prasyarat​

  • Docker Engine 24 atau lebih baru dengan Docker Compose v2.
  • Database PostgreSQL khusus untuk Human Plugin, yang dapat dijangkau dari host. Lihat Prasyarat dan akses.
  • Kredensial registry dan access key dari Unico.

1. Login ke registry​

Sekali per host. Docker menyimpan kredensial di ~/.docker/config.json.

echo "<token>" | docker login pkg.unico.run -u <username> --password-stdin

2. Tulis pengaturan​

Buat direktori untuk Human Plugin dan file .env yang hanya dapat dibaca oleh pemiliknya:

mkdir -p /opt/human-plugin && cd /opt/human-plugin
.env
HUMAN_API_ACCESS_KEY=<your access key>
POSTGRES_ADDRESS_HOST=<database host>
POSTGRES_USER=human_plugin
POSTGRES_PASSWORD=<database password>
chmod 600 .env

Tambahkan POSTGRES_ADDRESS_PORT, POSTGRES_DATABASE atau POSTGRES_SSL_MODE hanya jika database Anda berbeda dari nilai default di Konfigurasi. Jangan pernah meng-commit file .env.

3. Tulis compose.yaml​

compose.yaml
services:
human-plugin:
image: pkg.unico.run/human-plugin-api:latest
pull_policy: always
restart: unless-stopped
stop_grace_period: 60s
env_file: .env
ports:
- "127.0.0.1:8080:8080"
  • ports: publikasikan hanya di 127.0.0.1 atau antarmuka privat, jangan pernah di 0.0.0.0. Human Plugin tidak memiliki autentikasi sendiri: lihat Jaringan dan keamanan.
  • stop_grace_period: 60s: Human Plugin menunggu hingga 55 detik untuk permintaan yang sedang berjalan saat berhenti. Grace period yang lebih pendek dapat memutus create di tengah jalan.
  • pull_policy: always: setiap up memeriksa image terbaru, sehingga Anda selalu menjalankan rilis terbaru.

4. Mulai​

docker compose up -d
curl --fail http://127.0.0.1:8080/health/ready

Arahkan trafik ke Human Plugin hanya setelah /health/ready menjawab 200. Lalu jalankan permintaan create dari Quickstart terhadapnya.

Log dan status​

docker compose ps
docker compose logs -f human-plugin

Startup yang sehat diakhiri dengan baris human plugin listening. Lihat Kesehatan dan pemantauan untuk log startup lengkap. Jika container restart terus-menerus, log menyebutkan alasannya: lihat Pemecahan masalah.

Pembaruan​

docker compose pull && docker compose up -d

Compose mengganti container hanya jika image berubah. Lihat Operasi untuk hal yang perlu diperiksa setelah pembaruan.

Berhenti​

docker compose down

Data Anda berada di database PostgreSQL Anda, sehingga menghentikan atau menghapus container tidak menghilangkan apa pun.