services: netdata: image: netdata/netdata profiles: ["disabled"] pid: host network_mode: host restart: unless-stopped cap_add: - SYS_PTRACE - SYS_ADMIN security_opt: - apparmor:unconfined volumes: - ./config/netdata/netdataconfig/netdata:/etc/netdata - ./config/netdata/netdatalib:/var/lib/netdata - ./config/netdata/netdatacache:/var/cache/netdata - /etc/passwd:/host/etc/passwd:ro - /etc/group:/host/etc/group:ro - /proc:/host/proc:ro - /sys:/host/sys:ro - /etc/os-release:/host/etc/os-release:ro - /var/run/docker.sock:/var/run/docker.sock:ro uptime-kuma: image: louislam/uptime-kuma environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC volumes: - ./config/uptime-kuma:/app/data restart: unless-stopped nginx: # Note : Only nginx:alpine supports bcrypt. # If you don't need to use bcrypt, you can use a different tag. # Ref. https://github.com/nginxinc/docker-nginx/issues/29 image: "nginx:alpine" ports: - "80:80" - 443:443 - 5043:5043 links: - registry:registry volumes: - ./data/nginx/auth:/etc/nginx/conf.d - ./data/nginx/auth/nginx.conf:/etc/nginx/nginx.conf:ro - ./data/nginx/sites:/etc/nginx/sites - ./data/certbot/www:/var/www/certbot/:ro - ./data/certbot/conf/:/etc/nginx/ssl/:ro restart: unless-stopped registry: image: registry:2 environment: - REGISTRY_STORAGE_DELETE_ENABLED=true volumes: - ./data/registry:/var/lib/registry restart: unless-stopped registry-ui: image: joxit/docker-registry-ui:main restart: always environment: - SINGLE_REGISTRY=true - REGISTRY_TITLE=example # change this to server name - REGISTRY_URL=https://example.com/ # change this to server url - DELETE_IMAGES=true - SHOW_CONTENT_DIGEST=true - SHOW_CATALOG_NB_TAGS=true - CATALOG_MIN_BRANCHES=1 - CATALOG_MAX_BRANCHES=1 - TAGLIST_PAGE_SIZE=100 - CATALOG_ELEMENTS_LIMIT=1000 - NGINX_PROXY_PASS_URL=http://registry:5000 certbot: image: certbot/certbot:latest volumes: - ./data/certbot/www/:/var/www/certbot/:rw - ./data/certbot/conf/:/etc/letsencrypt/:rw watchtower: image: containrrr/watchtower restart: always volumes: - /var/run/docker.sock:/var/run/docker.sock - /home/pi/.docker/:/config/ # change this to docker home if you need to login to any registries environment: - WATCHTOWER_POLL_INTERVAL=60 #How often will watchtower check for docker image updates. Default 1 day. - WATCHTOWER_CLEANUP=true # clean old images after update - DOCKER_CONFIG=/config - HOME=/ - PATH=$PATH:/go/bin