appstore/apps/safeline/newnet-5.1.0/docker-compose.yml
2024-03-22 11:32:48 +08:00

184 lines
4.7 KiB
YAML

version: '3'
services:
safeline-mgt:
container_name: ${CONTAINER_NAME}-mgt
restart: always
networks:
1panel-network:
safeline-ce:
ipv4_address: ${SUBNET_PREFIX}.4
image: chaitin/safeline-mgt:5.1.0
volumes:
- /etc/localtime:/etc/localtime:ro
- ${SAFELINE_DIR}/resources/mgt:/app/data
ports:
- ${PANEL_APP_PORT_HTTP:-9443}:1443
healthcheck:
test: curl -k -f https://localhost:1443/api/open/health
environment:
- MGT_PG=postgres://safeline-ce:${POSTGRES_PASSWORD}@safeline-pg/safeline-ce?sslmode=disable
dns:
- 119.29.29.29
- 223.5.5.5
- 180.76.76.76
- 1.2.4.8
- 114.114.114.114
- 8.8.8.8
logging:
options:
max-size: "100m"
max-file: "10"
depends_on:
- safeline-pg
- safeline-fvm
labels:
createdBy: Apps
safeline-detector:
container_name: ${CONTAINER_NAME}-detector
restart: always
networks:
1panel-network:
safeline-ce:
ipv4_address: ${SUBNET_PREFIX}.5
image: chaitin/safeline-detector:5.1.0
volumes:
- ${SAFELINE_DIR}/resources/detector:/resources/detector
- ${SAFELINE_DIR}/logs/detector:/logs/detector
- /etc/localtime:/etc/localtime:ro
environment:
- LOG_DIR=/logs/detector
labels:
createdBy: Apps
safeline-mario:
container_name: ${CONTAINER_NAME}-mario
restart: always
networks:
1panel-network:
safeline-ce:
ipv4_address: ${SUBNET_PREFIX}.6
image: chaitin/safeline-mario:5.1.0
volumes:
- ${SAFELINE_DIR}/resources/mario:/resources/mario
- ${SAFELINE_DIR}/logs/mario:/logs/mario
- /etc/localtime:/etc/localtime:ro
environment:
- LOG_DIR=/logs/mario
- GOGC=100
- DATABASE_URL=postgres://safeline-ce:${POSTGRES_PASSWORD}@safeline-pg/safeline-ce
labels:
createdBy: Apps
safeline-tengine:
container_name: ${CONTAINER_NAME}-tengine
restart: always
image: chaitin/safeline-tengine:5.1.0
volumes:
- /etc/localtime:/etc/localtime:ro
- /etc/resolv.conf:/etc/resolv.conf:ro
- ${SAFELINE_DIR}/resources/nginx:/etc/nginx
- ${SAFELINE_DIR}/resources/detector:/resources/detector
- ${SAFELINE_DIR}/logs/nginx:/var/log/nginx
- ${SAFELINE_DIR}/resources/cache:/usr/local/nginx/cache
environment:
- TCD_MGT_API=https://${SUBNET_PREFIX}.4:1443/api/open/publish/server
- SNSERVER_ADDR=${SUBNET_PREFIX}.5:8000
ulimits:
nofile: 131072
network_mode: host
labels:
createdBy: Apps
safeline-luigi:
container_name: ${CONTAINER_NAME}-luigi
restart: always
networks:
1panel-network:
safeline-ce:
ipv4_address: ${SUBNET_PREFIX}.7
image: chaitin/safeline-luigi:5.1.0
volumes:
- /etc/localtime:/etc/localtime:ro
- ${SAFELINE_DIR}/resources/luigi:/app/data
environment:
- MGT_IP=${SUBNET_PREFIX}.4
depends_on:
- safeline-detector
- safeline-mgt
labels:
createdBy: Apps
safeline-fvm:
container_name: ${CONTAINER_NAME}-fvm
restart: always
networks:
1panel-network:
safeline-ce:
ipv4_address: ${SUBNET_PREFIX}.8
image: chaitin/safeline-fvm:5.1.0
volumes:
- /etc/localtime:/etc/localtime:ro
labels:
createdBy: Apps
safeline-bridge:
container_name: ${CONTAINER_NAME}-bridge
restart: always
networks:
1panel-network:
safeline-ce:
ipv4_address: ${SUBNET_PREFIX}.9
image: chaitin/safeline-bridge:5.1.0
volumes:
- /etc/localtime:/etc/localtime:ro
- /var/run:/app/run
command:
- /app/bridge
- serve
- -n
- unix
- -a
- /app/run/safeline.sock
logging:
options:
max-size: "100m"
max-file: "10"
depends_on:
- safeline-mgt
labels:
createdBy: Apps
safeline-pg:
container_name: ${CONTAINER_NAME}-pg
restart: always
networks:
1panel-network:
safeline-ce:
ipv4_address: ${SUBNET_PREFIX}.2
image: postgres:15.6
volumes:
- ${SAFELINE_DIR}/resources/postgres/data:/var/lib/postgresql/data
- /etc/localtime:/etc/localtime:ro
environment:
- POSTGRES_USER=safeline-ce
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
command: [postgres, -c, max_connections=200]
healthcheck:
test: pg_isready -U safeline-ce -d safeline-ce
labels:
createdBy: Apps
networks:
1panel-network:
external: true
safeline-ce:
name: safeline-ce
driver: bridge
ipam:
driver: default
config:
- gateway: ${SUBNET_PREFIX:?SUBNET_PREFIX required}.1
subnet: ${SUBNET_PREFIX}.0/24
driver_opts:
com.docker.network.bridge.name: safeline-ce