मुख्य सामग्री पर जाएं
Docker Compose

एक host पर एक Human Plugin container, जो आपके PostgreSQL डेटाबेस से जुड़ा है।

Markdown

पूर्वापेक्षाएँ​

  • Docker Engine 24 या उससे नया, Docker Compose v2 के साथ।
  • Human Plugin के लिए समर्पित एक PostgreSQL डेटाबेस, जो host से पहुँच योग्य हो। पूर्वापेक्षाएँ और एक्सेस देखें।
  • Unico से मिले registry credentials और access key।

1. Registry में लॉग इन करें​

प्रति host एक बार। Docker credential को ~/.docker/config.json में रखता है।

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

2. सेटिंग्स लिखें​

Human Plugin के लिए एक डायरेक्टरी और एक .env फ़ाइल बनाएँ, जिसे केवल उसका मालिक पढ़ सके:

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

POSTGRES_ADDRESS_PORT, POSTGRES_DATABASE या POSTGRES_SSL_MODE तभी जोड़ें जब आपका डेटाबेस कॉन्फ़िगरेशन के डिफ़ॉल्ट मानों से अलग हो। .env फ़ाइल को कभी commit न करें।

3. 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: केवल 127.0.0.1 या किसी private interface पर publish करें, 0.0.0.0 पर कभी नहीं। Human Plugin में अपना कोई authentication नहीं है: नेटवर्किंग और सुरक्षा देखें।
  • stop_grace_period: 60s: रुकते समय Human Plugin चल रहे अनुरोधों के लिए 55 सेकंड तक प्रतीक्षा करता है। इससे छोटी grace period किसी create को बीच में काट सकती है।
  • pull_policy: always: हर up सबसे नई image की जाँच करता है, इसलिए आप हमेशा सबसे हालिया release चलाते हैं।

4. शुरू करें​

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

ट्रैफ़िक को Human Plugin तक तभी भेजें जब /health/ready 200 लौटाए। फिर उसके विरुद्ध क्विकस्टार्ट का create अनुरोध चलाएँ।

लॉग और स्थिति​

docker compose ps
docker compose logs -f human-plugin

स्वस्थ स्टार्ट human plugin listening लाइन पर समाप्त होता है। पूरे स्टार्टअप लॉग के लिए हेल्थ और मॉनिटरिंग देखें। यदि container लूप में रीस्टार्ट होता रहे, तो लॉग कारण बताता है: समस्या निवारण देखें।

अपडेट​

docker compose pull && docker compose up -d

Compose container को केवल तभी बदलता है जब image बदली हो। अपडेट के बाद क्या जाँचना है, इसके लिए ऑपरेशंस देखें।

रोकें​

docker compose down

आपका डेटा आपके PostgreSQL डेटाबेस में है, इसलिए container को रोकने या हटाने से कुछ नहीं खोता।