services: send: profiles: [services] build: context: ./send restart: always ports: - '1234:1234' environment: # proxy - VIRTUAL_PORT=1234 - VIRTUAL_HOST=send.ediblemonad.dev - LETSENCRYPT_HOST=send.ediblemonad.dev - DHPARAM_GENERATION=false # send - NODE_ENV=production - BASE_URL=https://send.ediblemonad.dev - PORT=1234 - REDIS_HOST=redis - FILE_DIR=/uploads - EXPIRE_TIMES_SECONDS=3600,86400,604800,2592000 - DEFAULT_EXPIRE_SECONDS=86400 - MAX_EXPIRE_SECONDS=2592000 # 30 days - MAX_DOWNLOADS=100 - MAX_FILE_SIZE=536870912 # 512M deploy: resources: limits: cpus: '0.2' volumes: - ${SEND_UPLOADS_ROOT:-/uploads}:/uploads depends_on: - redis cgit: profiles: [services] build: context: ./cgit restart: always ports: - 8080:80 environment: # proxy - VIRTUAL_PORT=80 - VIRTUAL_HOST=git.ediblemonad.dev - LETSENCRYPT_HOST=git.ediblemonad.dev - DHPARAM_GENERATION=false # cgit - USE_CUSTOM_CONFIG=true deploy: resources: limits: cpus: '0.5' reservations: cpus: '0.2' volumes: - cgit-cache:/var/cache/cgit - ${GIT_REPOS_ROOT:-/git}:/srv/git:ro - ./cgit/cgitrc:/etc/cgitrc:ro - ./cgit/static:/usr/share/webapps/cgit/ediblemonad:ro - ./cgit/filters:/usr/lib/cgit/filters/ediblemonad:ro - ./favicon.ico:/usr/share/webapps/cgit/favicon.ico:ro nginx-proxy: profiles: [core] container_name: nginx-proxy image: 'jwilder/nginx-proxy:alpine' restart: always ports: - '80:80' - '443:443' environment: - DEFAULT_HOST=ediblemonad.dev - HSTS=off volumes: - /var/run/docker.sock:/tmp/docker.sock:ro - proxy-certs:/etc/nginx/certs:ro - proxy-vhost:/etc/nginx/vhost.d - proxy-html:/usr/share/nginx/html proxy-letsencrypt: profiles: [core] image: 'nginxproxy/acme-companion' restart: always environment: - DEFAULT_EMAIL=ediblemonad@gmail.com - NGINX_PROXY_CONTAINER=nginx-proxy - NGINX_DOCKER_GEN_CONTAINER=nginx-proxy # - ACME_CA_URI=https://acme-staging-v02.api.letsencrypt.org/directory volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - proxy-certs:/etc/nginx/certs - proxy-vhost:/etc/nginx/vhost.d - proxy-html:/usr/share/nginx/html - acme:/etc/acme.sh redis: profiles: [services] image: 'redis:alpine' restart: always volumes: - redis:/data volumes: redis: cgit-cache: proxy-certs: proxy-vhost: proxy-html: acme: