EQVPS

په VPS کې د Docker Compose سټیک د ځای پرځای کولو څرنګوالی

د Docker Compose سره په VPS کې د څو-کانټینر سټیک ځای پرځای کړئ: docker-compose.yml ولیکئ، پټ معلومات په .env کې وساتئ، د بیا-پیل-وروسته-بیا-پیلولو سره یې پورته کړئ، او یوازې هغه پورټونه خپاره کړئ چې تاسو یې واقعیا غواړئ. د یو ویب اپ، ډیټابیس او reverse proxy سره د کاپي-پیسټ بېلګه.

Docker Compose یو څو-کانټینر سټیک په یو فایل کې تشریح کوي او په یو کمانډ سره یې چلوي. دا د ځای پرځای کولو how-to دی؛ که مو نه وي کړي لومړی Docker نصب کړئ. د AI-اجنټ-ځانګړي سټیک لپاره (اجنټ + vector DB + Redis) د AI اجنټانو لپاره docker-compose وګورئ.

۱. یو سټیک: اپ + ډیټابیس + reverse proxy

# /opt/stack/docker-compose.yml
services:
  app:
    image: your/app:latest
    restart: unless-stopped
    env_file: [.env]
    depends_on: [db]
    # no ports: — reached only through the proxy below

  db:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
    volumes: ["pg:/var/lib/postgresql/data"]   # internal only

  caddy:                                        # HTTPS automatically
    image: caddy:2
    restart: unless-stopped
    ports: ["80:80", "443:443"]                 # the only public entrypoint
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - caddy_data:/data

volumes: { pg: {}, caddy_data: {} }

پټ معلومات په .env کې ژوند کوي، هیڅکله د compose فایل کې نه:

# /opt/stack/.env  (chmod 600, git-ignored)
DB_PASSWORD=a-long-random-string

یو لږترلږه Caddyfile ستاسو ډومین اپ ته پروکسي کوي او HTTPS پخپله راوړي:

app.yourdomain.com {
  reverse_proxy app:8080
}

۲. پورته یې کړئ

cd /opt/stack
docker compose up -d
docker compose ps
docker compose logs -f app

په هره خدمت کې restart: unless-stopped + په بوټ کې فعال Docker = سټیک له بیا-پیلولو وروسته پخپله بیرته راځي.

۳. ورځني کمانډونه

docker compose pull && docker compose up -d   # update images
docker compose down                            # stop the stack
docker compose restart app                     # restart one service

هغه برخه چې خلک یې غلطوي: څرګند شوي پورټونه

Docker پورټونه د iptables له لارې خپروي، نو د ports: ["5432:5432"] لرونکی کانټینر د هغه UFW فایروال شاته هم چې تاسو یې بند ګڼئ له انټرنیټ څخه د لاسرسي وړ دی. یوازې عامه ننوتلو ټکی خپور کړئ (په 80/443 کې پروکسي)؛ ډیټابیسونه او کیش د compose شبکې کې یا 127.0.0.1 سره تړل شوي وساتئ. هر هغه څه چې د ویب ترافیک خدمت کوي ځانګړي-IP پلان ته اړتیا لري؛ د یو UFW فایروال سره یې جوړه کړئ.

د یو IP شاته د بشپړ سټیک لپاره ډیری خدمات پخپله کوربه توب وګورئ. نږدې په یوه دقیقه کې root، NVMe، بې له KYC، په کریپټو تادیه.

پوښتنې

په VPS کې د Docker Compose سټیک څنګه ځای پرځای کړم؟

د Compose پلگ ان سره Docker نصب کړئ، یو docker-compose.yml ولیکئ چې هره خدمت تشریح کوي، پټ معلومات په git-پرېښودل شوي .env کې وساتئ، بیا docker compose up -d. په هره خدمت کې restart: unless-stopped وټاکئ او په بوټ کې Docker فعال کړئ ترڅو سټیک بیا-پیلونه وزغمي. لاندې بېلګه یو ویب اپ، Postgres او د Caddy reverse proxy چلوي.

پټ معلومات چیرته ځي — د compose فایل کې؟

نه. دوی په یو .env فایل کې کیږدئ (chmod 600، git-پرېښودل شوی) او په compose کې د ${VAR} په توګه ورته اشاره وکړئ، یا Docker secrets وکاروئ. پټنومونه یا API کیلي هیڅکله docker-compose.yml ته مه کمیټ کوئ — د ژوندیو اسنادو سره لیک شوی فایل کلاسیک تیروتنه ده.

ایا سټیک به له بیا-پیلولو وروسته بیرته راشي؟

یوازې که تاسو ورته ووایاست. په هره خدمت کې restart: unless-stopped (یا always) وټاکئ او په بوټ کې Docker فعال کړئ (systemctl enable docker). بیا docker compose up -d بیا-پیلونه زغمي او کریش شوي کانټینرونه بیا پیلوي.

کوم پورټونه څرګندیږي؟

یوازې هغه چې تاسو یې د ports: سره خپروئ. کورني خدمات (ډیټابیسونه، کیش) د compose شبکې یا 127.0.0.1 سره وتړئ او یوازې عامه ننوتلو ټکی خپور کړئ — معمولاً په 80/443 کې یو reverse proxy. Docker د iptables له لارې خپروي، نو یو ناغوښتی ports: کرښه د هغه UFW شاته هم چې تاسو یې بند ګڼئ له انټرنیټ څخه د لاسرسي وړ ده.

ایا تاسو پیژندپاڼه یا کارت غواړئ؟

نه. د نوم لیکنې لپاره یو بریښنالیک، په USDC یا USDT کې تادیه — هیڅ سند نشته، هیڅ کارت نشته. نږدې په یوه دقیقه کې root.

تبصرې

لا تبصرې نشته. لومړی اوسئ.

یوه تبصره پریږدئ

تبصرې د ښکاره کیدو مخکې اعتدال کیږي.