--- version: '3.4' services: netbox: &netbox image: netboxcommunity/netbox:${VARIANT-latest} depends_on: - postgres - redis #- redis-cache #- netbox-worker env_file: env/netbox.env user: 'unit:root' healthcheck: start_period: 60s timeout: 3s interval: 15s test: "curl -f http://localhost:8080/api/ || exit 1" volumes: - ./configuration:/etc/netbox/config: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 #netbox-worker: # <<: *netbox # depends_on: # netbox: # condition: service_healthy # command: # - /opt/netbox/venv/bin/python # - /opt/netbox/netbox/manage.py # - rqworker # healthcheck: # start_period: 20s # timeout: 3s # interval: 15s # test: "ps -aux | grep -v grep | grep -q rqworker || exit 1" #netbox-housekeeping: # <<: *netbox # depends_on: # netbox: # condition: service_healthy # command: # - /opt/netbox/housekeeping.sh # healthcheck: # start_period: 20s # timeout: 3s # interval: 15s # test: "ps -aux | grep -v grep | grep -q housekeeping || exit 1" # postgres postgres: image: postgres:16-alpine env_file: env/postgres.env volumes: - netbox-postgres-data:/var/lib/postgresql/data # redis redis: image: redis:7-alpine command: - sh - -c # this is to evaluate the $REDIS_PASSWORD from the env - redis-server --appendonly yes --requirepass $$REDIS_PASSWORD ## $$ because of docker-compose env_file: env/redis.env #volumes: # - netbox-redis-data:/data #redis-cache: # image: redis:7-alpine # command: # - sh # - -c # this is to evaluate the $REDIS_PASSWORD from the env # - redis-server --requirepass $$REDIS_PASSWORD ## $$ because of docker-compose # env_file: env/redis-cache.env # volumes: # - netbox-redis-cache-data:/data volumes: #netbox-media-files: # driver: local netbox-postgres-data: driver: local #netbox-redis-data: # driver: local #netbox-redis-cache-data: # driver: local