This repository has been archived on 2022-10-07. You can view files and clone it, but cannot push or open issues or pull requests.
skynet-webportal/docker-compose.yml

148 lines
3.0 KiB
YAML

version: "3.7"
networks:
shared:
driver: bridge
volumes:
webapp:
services:
sia:
build:
context: ./docker/sia
dockerfile: Dockerfile
args:
branch: master
container_name: sia
restart: unless-stopped
environment:
- SIA_MODULES=gctwr
env_file:
- .env
volumes:
- ./docker/data/sia:/sia-data
networks:
- shared
expose:
- 9980
sia-upload-legacy:
image: nebulouslabs/sia:dev
container_name: sia-upload-legacy
restart: unless-stopped
environment:
- SIA_MODULES=gctwr
volumes:
- ./docker/data/sia-upload-legacy:/sia-data
networks:
- shared
expose:
- 9980
caddy:
build:
context: ./docker/caddy
dockerfile: Dockerfile
container_name: caddy
restart: unless-stopped
env_file:
- .env
volumes:
- ./docker/data/caddy/data:/data
- ./docker/data/caddy/config:/config
- ./docker/caddy/Caddyfile:/etc/caddy/Caddyfile
networks:
- shared
ports:
- "80:80"
- "443:443"
depends_on:
- nginx
nginx:
image: openresty/openresty:1.15.8.3-2-xenial
container_name: nginx
restart: unless-stopped
env_file:
- .env
volumes:
- ./docker/nginx/nginx.conf:/usr/local/openresty/nginx/conf/nginx.conf:ro
- ./docker/nginx/conf.d:/etc/nginx/conf.d:ro
- ./docker/data/nginx/cache:/data/nginx/cache
- ./docker/data/nginx/logs:/usr/local/openresty/nginx/logs
- ./docker/data/sia/apipassword:/data/sia/apipassword:ro
- webapp:/var/www/webportal:ro
networks:
- shared
expose:
- 80
depends_on:
- sia
- health-check
- handshake-api
webapp:
build:
context: ./packages/webapp
dockerfile: Dockerfile
container_name: webapp
restart: unless-stopped
tty: true
volumes:
- webapp:/usr/app/public
handshake:
build:
context: ./docker/handshake
dockerfile: Dockerfile
container_name: handshake
restart: unless-stopped
environment:
- HSD_LOG_CONSOLE=false
- HSD_HTTP_HOST=0.0.0.0
- HSD_NETWORK=main
- HSD_PORT=12037
env_file:
- .env
volumes:
- ./docker/data/handshake/.hsd:/root/.hsd
networks:
- shared
expose:
- 12037
handshake-api:
build:
context: ./packages/handshake-api
dockerfile: Dockerfile
container_name: handshake-api
restart: unless-stopped
environment:
- HSD_HOST=handshake
- HSD_NETWORK=main
- HSD_PORT=12037
env_file:
- .env
networks:
- shared
expose:
- 3100
depends_on:
- handshake
health-check:
build:
context: ./packages/health-check
dockerfile: Dockerfile
container_name: health-check
restart: unless-stopped
volumes:
- ./docker/data/health-check/state:/usr/app/state
networks:
- shared
environment:
- PORTAL_URL=nginx
expose:
- 3100