diff --git a/docker-compose.yml b/docker-compose.yml index 98447d2..584c469 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,3 +1,18 @@ +x-netbox-base: &netbox + image: docker.io/netboxcommunity/netbox:${VERSION-v4.2-3.2.0} + depends_on: + - redis + - redis-cache + env_file: env/netbox.env + user: "unit:root" + volumes: + - ./configuration:/etc/netbox/config:z,ro + - netbox-media-files:/opt/netbox/netbox/media:rw + - netbox-reports-files:/opt/netbox/netbox/reports:rw + - netbox-scripts-files:/opt/netbox/netbox/scripts:rw + networks: + - netbox + services: netbox: &netbox image: docker.io/netboxcommunity/netbox:${VERSION-v4.3-3.3.0} @@ -6,6 +21,8 @@ services: - redis - redis-cache env_file: env/netbox.env + #ports: + #- "8000:8080" user: "unit:root" deploy: resources: @@ -17,12 +34,12 @@ services: - traefik.http.routers.netbox.rule=Host(`netbox.dfestaging.jennyme.co.za`) - traefik.http.routers.netbox.tls.certresolver=myresolver # Use the ACME resolver - traefik.http.routers.netbox.entrypoints=websecure # Use the HTTPS entrypoint - - traefik.http.services.netbox.loadbalancer.server.port=8000 - healthcheck: - test: curl -f http://localhost:8080/login/ || exit 1 - start_period: 90s - timeout: 3s - interval: 15s + - traefik.http.services.netbox.loadbalancer.server.port=8080 + #healthcheck: + # test: curl -f http://localhost:8080/login/ || exit 1 + # start_period: 90s + # timeout: 3s + # interval: 15s volumes: - ./configuration:/etc/netbox/config:z,ro - netbox-media-files:/opt/netbox/netbox/media:rw @@ -33,36 +50,30 @@ services: - dfe_network netbox-worker: <<: *netbox - depends_on: - netbox: - condition: service_healthy + # depends_on: + # netbox: + # condition: service_healthy command: - /opt/netbox/venv/bin/python - /opt/netbox/netbox/manage.py - rqworker - healthcheck: - test: ps -aux | grep -v grep | grep -q rqworker || exit 1 - start_period: 20s - timeout: 3s - interval: 15s - networks: - - netbox - - dfe_network + #healthcheck: + # test: ps -aux | grep -v grep | grep -q rqworker || exit 1 + # start_period: 20s + # timeout: 3s + # interval: 15s netbox-housekeeping: <<: *netbox - depends_on: - netbox: - condition: service_healthy + # depends_on: + # netbox: + # condition: service_healthy command: - /opt/netbox/housekeeping.sh - healthcheck: - test: ps -aux | grep -v grep | grep -q housekeeping || exit 1 - start_period: 20s - timeout: 3s - interval: 15s - networks: - - netbox - - dfe_network + #healthcheck: + # test: ps -aux | grep -v grep | grep -q housekeeping || exit 1 + # start_period: 20s + # timeout: 3s + # interval: 15s # postgres #postgres: @@ -84,31 +95,29 @@ services: - sh - -c # this is to evaluate the $REDIS_PASSWORD from the env - valkey-server --appendonly yes --requirepass $$REDIS_PASSWORD ## $$ because of docker-compose - healthcheck: &redis-healthcheck - test: '[ $$(valkey-cli --pass "$${REDIS_PASSWORD}" ping) = ''PONG'' ]' - start_period: 5s - timeout: 3s - interval: 1s - retries: 5 + # healthcheck: &redis-healthcheck + # test: '[ $$(valkey-cli --pass "$${REDIS_PASSWORD}" ping) = ''PONG'' ]' + # start_period: 5s + # timeout: 3s + # interval: 1s + # retries: 5 env_file: env/redis.env volumes: - netbox-redis-data:/data networks: - netbox - - dfe_network redis-cache: image: docker.io/valkey/valkey:8.1-alpine command: - sh - -c # this is to evaluate the $REDIS_PASSWORD from the env - valkey-server --requirepass $$REDIS_PASSWORD ## $$ because of docker-compose - healthcheck: *redis-healthcheck + #healthcheck: *redis-healthcheck env_file: env/redis-cache.env volumes: - netbox-redis-cache-data:/data networks: - netbox - - dfe_network volumes: netbox-media-files: