myos/stack/host/fabio.yml

49 lines
1.4 KiB
YAML

version: '3.6'
services:
fabio:
build:
args:
- DOCKER_BUILD_DIR=docker/fabio
- DOCKER_MACHINE=${DOCKER_MACHINE}
- DOCKER_SYSTEM=${DOCKER_SYSTEM}
- FABIO_VERSION=1.6.2
context: ../..
dockerfile: docker/fabio/Dockerfile
container_name: ${HOST_COMPOSE_PROJECT_NAME}-fabio
image: ${HOST_DOCKER_REPOSITORY}/fabio:${DOCKER_IMAGE_TAG}
command: -registry.backend "consul" -registry.consul.addr "consul:8500" -registry.consul.token "${HOST_CONSUL_HTTP_TOKEN}" -proxy.addr ":80,:443;cs=local" -proxy.cs "cs=local;type=file;cert=/etc/letsencrypt/live/${DOMAIN}/fullchain.pem;key=/etc/letsencrypt/live/${DOMAIN}/privkey.pem"
depends_on:
- consul
extra_hosts:
- consul:${DOCKER_INTERNAL_DOCKER_HOST}
hostname: ${HOSTNAME}
labels:
- SERVICE_80_CHECK_TCP=true
- SERVICE_80_NAME=${HOST_COMPOSE_SERVICE_NAME}-fabio-80
- SERVICE_443_CHECK_TCP=true
- SERVICE_443_NAME=${HOST_COMPOSE_SERVICE_NAME}-fabio-443
- SERVICE_9998_CHECK_HTTP=/routes
- SERVICE_9998_NAME=${HOST_COMPOSE_SERVICE_NAME}-fabio-9998
- SERVICE_9998_TAGS=${HOST_FABIO_SERVICE_9998_TAGS}
- SERVICE_9999_IGNORE=true
ports:
- 80:80/tcp
- 443:443/tcp
- 9998/tcp
networks:
- public
restart: always
volumes:
- host:/etc/letsencrypt:ro
volumes:
host:
external: true
name: ${HOST_DOCKER_VOLUME}
networks:
public:
external: true
name: ${DOCKER_NETWORK_PUBLIC}