Add distributed F# monitoring platform
Some checks failed
CI / build-test (push) Has been cancelled
CI / containers (push) Has been cancelled

This commit is contained in:
Codex
2026-08-09 18:22:24 +03:00
parent cf8c51e3e8
commit 8ec7ee2ec9
27 changed files with 647 additions and 84 deletions

48
deploy/docker-compose.yml Normal file
View File

@@ -0,0 +1,48 @@
services:
postgres:
image: postgres:18-alpine
restart: unless-stopped
environment:
POSTGRES_DB: ${POSTGRES_DB:-ipcheck}
POSTGRES_USER: ${POSTGRES_USER:-ipcheck}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?POSTGRES_PASSWORD is required}
volumes:
- postgres-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-ipcheck} -d ${POSTGRES_DB:-ipcheck}"]
interval: 10s
timeout: 5s
retries: 5
server:
image: ${IPCHECK_SERVER_IMAGE:-ipcheck/server:local}
build:
context: ..
dockerfile: Dockerfile.server
restart: unless-stopped
ports:
- "${IPCHECK_HTTP_PORT:-8080}:8080"
environment:
ConnectionStrings__Postgres: Host=postgres;Database=${POSTGRES_DB:-ipcheck};Username=${POSTGRES_USER:-ipcheck};Password=${POSTGRES_PASSWORD}
depends_on:
postgres:
condition: service_healthy
agent:
image: ${IPCHECK_AGENT_IMAGE:-ipcheck/agent:local}
build:
context: ..
dockerfile: Dockerfile.agent
restart: unless-stopped
cap_add:
- NET_RAW
environment:
IpCheck__ServerUrl: http://server:8080
IpCheck__LocationId: ${IPCHECK_LOCATION_ID}
IpCheck__SyncIntervalSeconds: ${IPCHECK_SYNC_INTERVAL_SECONDS:-30}
depends_on:
server:
condition: service_healthy
volumes:
postgres-data: