version: '3.4' services: netbox: image: ${IMAGE-netboxcommunity/netbox:latest} depends_on: - postgres - redis - redis-cache env_file: env/netbox.env user: '101' volumes: - ./startup_scripts:/opt/netbox/startup_scripts:z,ro - ./${INITIALIZERS_DIR-initializers}:/opt/netbox/initializers:z,ro - ./configuration:/etc/netbox/config:z,ro - ./reports:/etc/netbox/reports:z,ro - ./scripts:/etc/netbox/scripts:z,ro - netbox-nginx-config:/etc/netbox-nginx:z - netbox-static-files:/opt/netbox/netbox/static:z - netbox-media-files:/opt/netbox/netbox/media:z nginx: command: nginx -c /etc/netbox-nginx/nginx.conf image: nginx:1.17-alpine depends_on: - netbox ports: - 8080 volumes: - netbox-static-files:/opt/netbox/netbox/static:ro - netbox-nginx-config:/etc/netbox-nginx/:ro postgres: image: postgres:11-alpine env_file: env/postgres.env redis: image: redis:5-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 redis-cache: image: redis:5-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-static-files: driver: local netbox-nginx-config: driver: local netbox-media-files: driver: local