diff --git a/.env.sample b/.env.sample index 5e9e9f962514f85e646ef91574a87a901520bef9..b5066320318110754ee869c596999354d750a61e 100644 --- a/.env.sample +++ b/.env.sample @@ -1,3 +1,5 @@ +COMPOSE_FILE=docker-compose.yml:traefik.yml + NAME=servermon HOST=some-host.fqdn PASS=change-me diff --git a/docker-compose.yml b/docker-compose.yml index a766574fe974ef80bbd2cddc4f055aa4f91d0e70..b665a83acff468bd259f52d715be598cfe72238f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,35 +1,21 @@ -version: '2' +version: '3' services: - phpservermonitor: - build: ./src - restart: always - depends_on: - - mysql - volumes: - - ${PWD}/config.php:/var/www/html/config.php:rw - networks: - - default - - traefik - labels: - - "traefik.enable=true" - - "traefik.docker.network=traefik" - - "traefik.http.routers.${NAME}.rule=Host(`${HOST}`)" - - "traefik.http.routers.${NAME}.tls.certresolver=myresolver" - - "traefik.http.routers.${NAME}.entrypoints=web,websecure" - - "traefik.http.routers.${NAME}.middlewares=hardening@docker" + phpservermonitor: + build: ./src + restart: always + depends_on: + - mysql + volumes: + - ${PWD}/config.php:/var/www/html/config.php:rw - mysql: - image: mysql:5.7 - environment: - - MYSQL_ROOT_PASSWORD=${PASS} - - MYSQL_USER=${MYSQL_USER} - - MYSQL_PASSWORD=${MYSQL_PASSWORD} - - MYSQL_DATABASE=${MYSQL_DATABASE} - volumes: - - ./mysql/db-data:/var/lib/mysql - restart: always - -networks: - traefik: - external: true + mysql: + image: mysql:latest + environment: + - MYSQL_ROOT_PASSWORD=${PASS} + - MYSQL_USER=${MYSQL_USER} + - MYSQL_PASSWORD=${MYSQL_PASSWORD} + - MYSQL_DATABASE=${MYSQL_DATABASE} + volumes: + - ./mysql/db-data:/var/lib/mysql + restart: always diff --git a/traefik.yml b/traefik.yml new file mode 100644 index 0000000000000000000000000000000000000000..48eeb95c84c50be806b8e3cef2e0ac12b076113b --- /dev/null +++ b/traefik.yml @@ -0,0 +1,18 @@ +version: "3" +services: + kasm: + networks: + - default + - traefik + labels: + - "traefik.enable=true" + - "traefik.docker.network=traefik" + - "traefik.http.routers.${NAME}.rule=Host(`${HOST}`)" + - "traefik.http.routers.${NAME}.tls.certresolver=myresolver" + - "traefik.http.routers.${NAME}.entrypoints=web,websecure" + - "traefik.http.services.${NAME}.loadbalancer.server.port=6901" + - "traefik.http.services.${NAME}.loadbalancer.server.scheme=https" + +networks: + traefik: + external: true