Point rxprod-compose at prebuilt images and its own control-api.yaml/capi-db
docker-compose.yml now runs from prebuilt images (civ-capi/civ-adash/ civ-prober) instead of building from source, mounts this host's own rxprod-compose/control-api.yaml and capi-db/ (both local, gitignored except control-api.yaml itself which is now committed), and moves control-api off port 8080 onto 8081. rxprod-compose/sources/ carries local copies of the example configs (admin-dashboard/control-api/prober/validator-agent) plus .env.example, moved here from rxprod-compose/.env.example, for reference alongside this specific deployment's docker-compose.yml. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
c7710145a1
commit
6117c044b5
6 files changed
+184
-35
No files matched your search
@@ -1,18 +1,3 @@
|
||||
# Простой (без profiles/override/prod) docker-compose для сервера с ролями
|
||||
# control-api + admin-dashboard + prober. Реальный OpenStack (mode: real) —
|
||||
# validator-agent сюда не входит, он работает отдельно на реальных
|
||||
# ВМ-валидаторах в облаке и обращается к control-api по адресу этого хоста.
|
||||
#
|
||||
# Запуск:
|
||||
# cp .env.example .env # заполнить реальными OS_*-креденшлами и PROBER_SITE_ID
|
||||
# # поправить путь к control-api.yaml ниже, если реальный файл лежит не в
|
||||
# # /etc/cloud-ip-validator/control-api.yaml
|
||||
# docker compose up -d --build
|
||||
# curl -s http://localhost:8080/healthz
|
||||
#
|
||||
# (из корня репозитория тот же стек можно поднять гибче, с profiles и
|
||||
# dev/prod-разделением — см. deploy/docker/docker-compose.yml)
|
||||
|
||||
name: cloud-ip-validator
|
||||
|
||||
networks:
|
||||
@@ -25,20 +10,15 @@ volumes:
|
||||
|
||||
services:
|
||||
control-api:
|
||||
build:
|
||||
context: ..
|
||||
dockerfile: deploy/docker/control-api/Dockerfile
|
||||
image: cloud-ip-validator-control-api
|
||||
image: civ-capi
|
||||
platform: linux/amd64
|
||||
restart: unless-stopped
|
||||
networks: [backend]
|
||||
ports:
|
||||
- "8080:8080"
|
||||
- "8081:8081"
|
||||
volumes:
|
||||
# Поправьте путь слева, если реальный control-api.yaml (mode: real,
|
||||
# с настоящими validators/sites/targets/ip_addresses) лежит не здесь.
|
||||
- /etc/cloud-ip-validator/control-api.yaml:/etc/cloud-ip-validator/control-api.yaml:ro
|
||||
- control-api-db:/var/lib/cloud-ip-validator
|
||||
- /opt/lvraid/claude/cloud_ip_validator/rxprod-compose/control-api.yaml:/etc/cloud-ip-validator/control-api.yaml:ro
|
||||
- /opt/lvraid/claude/cloud_ip_validator/rxprod-compose/capi-db:/var/lib/cloud-ip-validator
|
||||
environment:
|
||||
OS_AUTH_URL: "${OS_AUTH_URL}"
|
||||
OS_PROJECT_ID: "${OS_PROJECT_ID}"
|
||||
@@ -49,40 +29,34 @@ services:
|
||||
OS_USER_DOMAIN_NAME: "${OS_USER_DOMAIN_NAME:-}"
|
||||
OS_PASSWORD: "${OS_PASSWORD:-}"
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://127.0.0.1:8080/healthz"]
|
||||
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://127.0.0.1:8081/healthz"]
|
||||
interval: 5s
|
||||
timeout: 3s
|
||||
retries: 10
|
||||
start_period: 5s
|
||||
|
||||
admin-dashboard:
|
||||
build:
|
||||
context: ..
|
||||
dockerfile: deploy/docker/admin-dashboard/Dockerfile
|
||||
image: cloud-ip-validator-admin-dashboard
|
||||
image: civ-adash
|
||||
platform: linux/amd64
|
||||
restart: unless-stopped
|
||||
networks: [backend]
|
||||
ports:
|
||||
- "8090:8090"
|
||||
environment:
|
||||
ADMIN_DASHBOARD_CONTROL_API_URL: http://control-api:8080
|
||||
ADMIN_DASHBOARD_CONTROL_API_URL: http://control-api:8081
|
||||
depends_on:
|
||||
control-api:
|
||||
condition: service_healthy
|
||||
|
||||
prober:
|
||||
build:
|
||||
context: ..
|
||||
dockerfile: deploy/docker/prober/Dockerfile
|
||||
image: cloud-ip-validator-prober
|
||||
image: civ-prober
|
||||
platform: linux/amd64
|
||||
restart: unless-stopped
|
||||
networks: [backend]
|
||||
cap_add: [NET_RAW]
|
||||
environment:
|
||||
PROBER_SITE_ID: "${PROBER_SITE_ID}"
|
||||
PROBER_CONTROL_API_URL: http://control-api:8080
|
||||
PROBER_CONTROL_API_URL: http://control-api:8081
|
||||
depends_on:
|
||||
control-api:
|
||||
condition: service_healthy
|
||||
Reference in new issue
Block a user