diff --git a/.gitignore b/.gitignore index 8f300c0..0faba90 100644 --- a/.gitignore +++ b/.gitignore @@ -21,6 +21,7 @@ apps/searxng/* venv/ core/authelia/users_database.yml monitoring/influxdb/* +!monitoring/influxdb/docker-compose.yml secrets/* !secrets/.env.secrets.example !.env.example diff --git a/monitoring/influxdb/docker-compose.yml b/monitoring/influxdb/docker-compose.yml new file mode 100644 index 0000000..9f37c86 --- /dev/null +++ b/monitoring/influxdb/docker-compose.yml @@ -0,0 +1,42 @@ +services: + influxdb: + profiles: ["monitoring","all","influxdb", "prometheus"] + image: influxdb:2.7 + container_name: influxdb + restart: unless-stopped +# env_file: +# - ${PROJECT_ROOT}/secrets/stack-secrets.env + volumes: + - ${PROJECT_ROOT}/monitoring/influxdb:/var/lib/influxdb2 + environment: + DOCKER_INFLUXDB_INIT_MODE: ${INFLUXDB_INIT_MODE} + DOCKER_INFLUXDB_INIT_USERNAME: ${INFLUXDB_INIT_USERNAME} + DOCKER_INFLUXDB_INIT_PASSWORD_FILE: /run/secrets/influxdb_init_password + DOCKER_INFLUXDB_INIT_ORG: ${INFLUXDB_INIT_ORG} + DOCKER_INFLUXDB_INIT_BUCKET: ${INFLUXDB_INIT_BUCKET} + secrets: + - influxdb_init_password + networks: +# - edge +# - traefik_reverse_proxy + - traefik + - monitor + labels: + - "traefik.http.routers.influxdb.rule=Host(`influxdb.lan.ddnsgeek.com`)" + - "traefik.enable=true" + - "traefik.http.routers.influxdb.entrypoints=websecure" + - "traefik.http.routers.influxdb.tls.certresolver=myresolver" + - "io.portainer.accesscontrol.public" + - "traefik.http.services.influxdb.loadbalancer.server.port=8086" + - "traefik.http.routers.influxdb.middlewares=authelia" + - "traefik.docker.network=core_traefik" + healthcheck: + test: ["CMD-SHELL", "curl -f http://localhost:8086/health || exit 1"] + interval: 30s + timeout: 5s + retries: 3 + start_period: 10s + +secrets: + influxdb_init_password: + file: ${PROJECT_ROOT}/secrets/influxdb_init_password.txt