Skip to main content

Utils

Services

Nginx proxy manager

Env

  • TZ

Volumes

  • /config

Shepherd

Automated service image updater

Env

  • SHEPHERD_SLEEP_TIME
  • SHEPHERD_IMAGE_AUTOCLEAN_LIMIT
  • TZ

Ofelia

Docker cron scheduler

Env

  • TZ

Volumes

  • /var/run/docker.sock

Stack

version: '3'
services:
  nginx_proxy_manager:
    image: jlesage/nginx-proxy-manager:latest
    restart: always
    ports:
      - '80:8080' # Public HTTP Port
      - '443:4443' # Public HTTPS Port
      #- '81:8181' # Admin Web Port
      # Add any other Stream port you want to expose
      # - '21:21' # FTP
    environment:
      TZ: ${TZ}
      # Uncomment this if IPv6 is not enabled on your host
      DISABLE_IPV6: 'true'
    volumes:
      - nginx_proxy_data:/config
    networks:
      - proxy_network

  shepherd:
    image: mazzolino/shepherd:latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      SLEEP_TIME: ${SHEPHERD_SLEEP_TIME}
      IMAGE_AUTOCLEAN_LIMIT: ${SHEPHERD_IMAGE_AUTOCLEAN_LIMIT}
      TZ: ${TZ}
    deploy:
      placement:
        constraints:
          - node.role == manager

  scheduler:
    image: mcuadros/ofelia:latest
    command: daemon --docker
    environment:
      TZ: ${TZ}
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      #labels:
      #ofelia.job-local.my-test-job.schedule: "@every 5m"
      #ofelia.job-local.my-test-job.command: "date"


volumes:
  nginx_proxy_data:
    external: true

networks:
  proxy_network:
    external: true