2022-08-11 21:13:03 +00:00
|
|
|
version: "3.8"
|
2020-06-22 09:54:01 +00:00
|
|
|
|
2020-11-03 14:43:55 +00:00
|
|
|
x-logging: &default-logging
|
2020-09-30 11:18:39 +00:00
|
|
|
driver: json-file
|
|
|
|
options:
|
|
|
|
max-size: "10m"
|
|
|
|
max-file: "3"
|
|
|
|
|
2020-06-22 09:54:01 +00:00
|
|
|
networks:
|
|
|
|
shared:
|
2020-09-08 14:30:54 +00:00
|
|
|
ipam:
|
|
|
|
driver: default
|
|
|
|
config:
|
2020-10-13 11:47:31 +00:00
|
|
|
- subnet: 10.10.10.0/24
|
2020-06-22 09:54:01 +00:00
|
|
|
|
|
|
|
services:
|
2021-04-29 15:03:18 +00:00
|
|
|
sia:
|
2022-08-01 11:48:58 +00:00
|
|
|
# uncomment "build" and comment out "image" to build from sources
|
|
|
|
# build:
|
|
|
|
# context: https://github.com/SkynetLabs/docker-skyd.git#main
|
|
|
|
# dockerfile: scratch/Dockerfile
|
2022-08-09 08:23:04 +00:00
|
|
|
# args:
|
|
|
|
# branch: master
|
2022-08-18 15:43:16 +00:00
|
|
|
image: skynetlabs/skyd:1.6.6
|
2022-07-06 16:51:01 +00:00
|
|
|
command: --disable-api-security --api-addr :9980 --modules gctwra
|
2021-04-29 15:03:18 +00:00
|
|
|
container_name: sia
|
|
|
|
restart: unless-stopped
|
2022-04-28 09:19:29 +00:00
|
|
|
stop_grace_period: 5m
|
2021-04-29 15:03:18 +00:00
|
|
|
logging: *default-logging
|
|
|
|
environment:
|
2022-02-22 09:53:09 +00:00
|
|
|
- SKYD_DISK_CACHE_ENABLED=${SKYD_DISK_CACHE_ENABLED:-true}
|
2022-01-12 12:51:41 +00:00
|
|
|
- SKYD_DISK_CACHE_SIZE=${SKYD_DISK_CACHE_SIZE:-53690000000} # 50GB
|
|
|
|
- SKYD_DISK_CACHE_MIN_HITS=${SKYD_DISK_CACHE_MIN_HITS:-3}
|
|
|
|
- SKYD_DISK_CACHE_HIT_PERIOD=${SKYD_DISK_CACHE_HIT_PERIOD:-3600} # 1h
|
2021-04-29 15:03:18 +00:00
|
|
|
env_file:
|
|
|
|
- .env
|
|
|
|
volumes:
|
|
|
|
- ./docker/data/sia:/sia-data
|
|
|
|
networks:
|
|
|
|
shared:
|
|
|
|
ipv4_address: 10.10.10.10
|
|
|
|
expose:
|
|
|
|
- 9980
|
|
|
|
|
2022-03-19 23:34:52 +00:00
|
|
|
certbot:
|
2022-07-01 14:40:34 +00:00
|
|
|
# replace this image with the image supporting your dns provider from
|
|
|
|
# https://hub.docker.com/r/certbot/certbot and adjust CERTBOT_ARGS env variable
|
|
|
|
# note: you will need to authenticate your dns request so consult the plugin docs
|
|
|
|
# configuration https://eff-certbot.readthedocs.io/en/stable/using.html#dns-plugins
|
2022-07-08 08:49:19 +00:00
|
|
|
#
|
|
|
|
# =================================================================================
|
|
|
|
# example docker-compose.yml changes required for Cloudflare dns provider:
|
|
|
|
#
|
|
|
|
# image: certbot/dns-cloudflare
|
|
|
|
# environment:
|
|
|
|
# - CERTBOT_ARGS=--dns-cloudflare --dns-cloudflare-credentials /etc/letsencrypt/cloudflare.ini
|
|
|
|
#
|
|
|
|
# create ./docker/data/certbot/cloudflare.ini file with the following content:
|
|
|
|
# dns_cloudflare_api_token = <api key generated at https://dash.cloudflare.com/profile/api-tokens>
|
|
|
|
#
|
|
|
|
# make sure that the file has 0400 permissions with:
|
|
|
|
# chmod 0400 ./docker/data/certbot/cloudflare.ini
|
2022-07-06 02:53:05 +00:00
|
|
|
image: certbot/dns-route53:v1.29.0
|
2022-03-19 23:34:52 +00:00
|
|
|
entrypoint: sh /entrypoint.sh
|
|
|
|
container_name: certbot
|
2021-04-29 15:03:18 +00:00
|
|
|
restart: unless-stopped
|
|
|
|
logging: *default-logging
|
|
|
|
env_file:
|
|
|
|
- .env
|
2022-03-19 23:34:52 +00:00
|
|
|
environment:
|
|
|
|
- CERTBOT_ARGS=--dns-route53
|
2021-04-29 15:03:18 +00:00
|
|
|
volumes:
|
2022-03-19 23:34:52 +00:00
|
|
|
- ./docker/certbot/entrypoint.sh:/entrypoint.sh
|
|
|
|
- ./docker/data/certbot:/etc/letsencrypt
|
2021-04-29 15:03:18 +00:00
|
|
|
|
|
|
|
nginx:
|
2022-04-21 12:22:50 +00:00
|
|
|
# uncomment "build" and comment out "image" to build from sources
|
|
|
|
# build:
|
2022-05-25 19:25:23 +00:00
|
|
|
# context: https://github.com/SkynetLabs/webportal-nginx.git#main
|
|
|
|
# dockerfile: Dockerfile
|
2022-08-09 11:38:19 +00:00
|
|
|
image: skynetlabs/webportal-nginx:0.5.1
|
2021-04-29 15:03:18 +00:00
|
|
|
container_name: nginx
|
|
|
|
restart: unless-stopped
|
|
|
|
logging: *default-logging
|
|
|
|
env_file:
|
|
|
|
- .env
|
|
|
|
volumes:
|
|
|
|
- ./docker/data/nginx/cache:/data/nginx/cache
|
2021-12-09 16:51:40 +00:00
|
|
|
- ./docker/data/nginx/blocker:/data/nginx/blocker
|
2021-04-29 15:03:18 +00:00
|
|
|
- ./docker/data/nginx/logs:/usr/local/openresty/nginx/logs
|
|
|
|
- ./docker/data/nginx/skynet:/data/nginx/skynet:ro
|
|
|
|
- ./docker/data/sia/apipassword:/data/sia/apipassword:ro
|
2022-03-19 23:34:52 +00:00
|
|
|
- ./docker/data/certbot:/etc/letsencrypt
|
2021-04-29 15:03:18 +00:00
|
|
|
networks:
|
|
|
|
shared:
|
|
|
|
ipv4_address: 10.10.10.30
|
2021-08-27 12:15:22 +00:00
|
|
|
ports:
|
|
|
|
- "443:443"
|
|
|
|
- "80:80"
|
2021-04-29 15:03:18 +00:00
|
|
|
depends_on:
|
|
|
|
- sia
|
|
|
|
- handshake-api
|
2021-06-25 12:05:36 +00:00
|
|
|
- dnslink-api
|
2021-04-29 15:03:18 +00:00
|
|
|
- website
|
|
|
|
|
|
|
|
website:
|
2022-04-07 12:12:24 +00:00
|
|
|
# uncomment "build" and comment out "image" to build from sources
|
|
|
|
# build:
|
2022-05-26 17:22:40 +00:00
|
|
|
# context: https://github.com/SkynetLabs/webportal-website.git#main
|
2022-05-26 17:17:48 +00:00
|
|
|
# dockerfile: Dockerfile
|
2022-06-27 14:11:08 +00:00
|
|
|
image: skynetlabs/webportal-website:0.2.1
|
2021-04-29 15:03:18 +00:00
|
|
|
container_name: website
|
|
|
|
restart: unless-stopped
|
|
|
|
logging: *default-logging
|
2022-05-09 08:24:21 +00:00
|
|
|
volumes:
|
|
|
|
- ./docker/data/website/.cache:/usr/app/.cache
|
|
|
|
- ./docker/data/website/.public:/usr/app/public
|
2021-04-29 15:03:18 +00:00
|
|
|
env_file:
|
|
|
|
- .env
|
|
|
|
networks:
|
|
|
|
shared:
|
|
|
|
ipv4_address: 10.10.10.35
|
|
|
|
expose:
|
|
|
|
- 9000
|
|
|
|
|
|
|
|
handshake:
|
2022-07-29 10:05:01 +00:00
|
|
|
image: handshakeorg/hsd:4.0.2
|
|
|
|
command: --chain-migrate=3 --no-wallet --no-auth --compact-tree-on-init --network=main --http-host=0.0.0.0
|
2021-04-29 15:03:18 +00:00
|
|
|
container_name: handshake
|
|
|
|
restart: unless-stopped
|
|
|
|
logging: *default-logging
|
|
|
|
volumes:
|
|
|
|
- ./docker/data/handshake/.hsd:/root/.hsd
|
|
|
|
networks:
|
|
|
|
shared:
|
|
|
|
ipv4_address: 10.10.10.40
|
|
|
|
expose:
|
|
|
|
- 12037
|
|
|
|
|
|
|
|
handshake-api:
|
2022-04-07 12:38:19 +00:00
|
|
|
# uncomment "build" and comment out "image" to build from sources
|
|
|
|
# build:
|
2022-05-25 19:14:26 +00:00
|
|
|
# context: https://github.com/SkynetLabs/webportal-handshake-api.git#main
|
|
|
|
# dockerfile: Dockerfile
|
2022-05-26 18:32:33 +00:00
|
|
|
image: skynetlabs/webportal-handshake-api:0.1.1
|
2021-04-29 15:03:18 +00:00
|
|
|
container_name: handshake-api
|
|
|
|
restart: unless-stopped
|
|
|
|
logging: *default-logging
|
|
|
|
environment:
|
|
|
|
- HOSTNAME=0.0.0.0
|
|
|
|
- HSD_HOST=handshake
|
|
|
|
- HSD_NETWORK=main
|
|
|
|
- HSD_PORT=12037
|
|
|
|
env_file:
|
|
|
|
- .env
|
|
|
|
networks:
|
|
|
|
shared:
|
|
|
|
ipv4_address: 10.10.10.50
|
|
|
|
expose:
|
|
|
|
- 3100
|
|
|
|
depends_on:
|
|
|
|
- handshake
|
|
|
|
|
2021-06-25 12:05:36 +00:00
|
|
|
dnslink-api:
|
2022-04-07 12:39:53 +00:00
|
|
|
# uncomment "build" and comment out "image" to build from sources
|
|
|
|
# build:
|
2022-05-25 19:06:11 +00:00
|
|
|
# context: https://github.com/SkynetLabs/webportal-dnslink-api.git#main
|
2022-05-25 14:55:46 +00:00
|
|
|
# dockerfile: Dockerfile
|
2022-08-05 14:24:13 +00:00
|
|
|
image: skynetlabs/webportal-dnslink-api:0.1.2
|
2021-06-25 12:05:36 +00:00
|
|
|
container_name: dnslink-api
|
|
|
|
restart: unless-stopped
|
|
|
|
logging: *default-logging
|
|
|
|
networks:
|
|
|
|
shared:
|
|
|
|
ipv4_address: 10.10.10.55
|
|
|
|
expose:
|
|
|
|
- 3100
|
|
|
|
|
2020-06-22 09:54:01 +00:00
|
|
|
health-check:
|
2022-04-07 12:41:18 +00:00
|
|
|
# uncomment "build" and comment out "image" to build from sources
|
|
|
|
# build:
|
2022-05-27 13:24:05 +00:00
|
|
|
# context: https://github.com/SkynetLabs/webportal-health-check.git#main
|
2022-05-25 15:47:53 +00:00
|
|
|
# dockerfile: Dockerfile
|
2022-08-18 15:12:37 +00:00
|
|
|
image: skynetlabs/webportal-health-check:0.4.0
|
2020-06-22 09:54:01 +00:00
|
|
|
container_name: health-check
|
2020-07-30 10:00:58 +00:00
|
|
|
restart: unless-stopped
|
2020-09-30 11:18:39 +00:00
|
|
|
logging: *default-logging
|
2020-06-22 09:54:01 +00:00
|
|
|
volumes:
|
|
|
|
- ./docker/data/health-check/state:/usr/app/state
|
|
|
|
networks:
|
2020-09-08 14:30:54 +00:00
|
|
|
shared:
|
2020-10-13 11:47:31 +00:00
|
|
|
ipv4_address: 10.10.10.60
|
2021-05-05 12:18:10 +00:00
|
|
|
env_file:
|
|
|
|
- .env
|
2020-06-22 09:54:01 +00:00
|
|
|
environment:
|
2020-08-01 15:04:23 +00:00
|
|
|
- HOSTNAME=0.0.0.0
|
2021-01-26 11:18:40 +00:00
|
|
|
- STATE_DIR=/usr/app/state
|
2020-06-22 09:54:01 +00:00
|
|
|
expose:
|
|
|
|
- 3100
|