gw17252009

NewDocker-compose.yaml

Sep 29th, 2021
178
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 36.10 KB | None | 0 0
  1. services:
  2. secrets:
  3.   cloudflare_api_key:
  4.     file: $SECRETSDIR/cloudflare_api_key.txt
  5.   cloudflare_email:
  6.     file: $SECRETSDIR/cloudflare_email.txt
  7.   transmission_rpc_pass:
  8.     file: $SECRETSDIR/transmission_rpc_pass.txt
  9.   transmission_rpc_user:
  10.     file: $SECRETSDIR/transmission_rpc_user.txt
  11.   cloudflare_api_key:
  12.     file: $SECRETSDIR/cloudflare_api_key.txt
  13.   cloudflare_email:
  14.     file: $SECRETSDIR/cloudflare_email.txt
  15.   mysql_root_password:
  16.     file: $SECRETSDIR/mysql_root_password.txt
  17.   mysql_password:
  18.     file: $SECRETSDIR/mysql_password.txt
  19.   mysql_username:
  20.     file: $SECRETSDIR/mysql_username.txt
  21.   openvpn_username:
  22.     file: $SECRETSDIR/openvpn_username.txt
  23.   openvpn_password:
  24.     file: $SECRETSDIR/openvpn_password.txt
  25.   traefik:
  26.     image: traefik:v2.5
  27.     container_name: traefik
  28.     hostname: traefik
  29.     environment:
  30.      - PGID=$PGID
  31.       - PUID=$PUID
  32.       - TZ=$TZ
  33.       - CF_API_EMAIL_FILE=/run/secrets/cloudflare_email
  34.       - CF_API_KEY_FILE=/run/secrets/cloudflare_api_key
  35.       - DOCKER_HOST=tcp://docker-socket-proxy:2375
  36.     secrets:
  37.      - cloudflare_api_key
  38.       - cloudflare_email
  39.     volumes:
  40.      - $DOCKERDIR/traefik2/rules:/rules
  41.       - $DOCKERDIR/traefik2/acme.json:/acme.json
  42.       - $DOCKERDIR/traefik2/traefik.log:/traefik.log
  43.       - $DOCKERDIR/shared:/shared
  44.     depends_on:
  45.      - authelia
  46.       - socketproxy
  47.     command: # CLI arguments
  48.       - --global.insecureSNI
  49.       - --global.checkNewVersion=true
  50.       - --global.sendAnonymousUsage=true
  51.       - --entryPoints.http.address=:80
  52.       - --entryPoints.https.address=:443
  53.         # Allow these IPs to set the X-Forwarded-* headers - Cloudflare IPs: https://www.cloudflare.com/ips/
  54.       - --entrypoints.https.forwardedHeaders.trustedIPs=173.245.48.0/20,103.21.244.0/22,103.22.200.0/22,103.31.4.0/22,141.101.64.0/18,108.162.192.0/18,190.93.240.0/20,188.114.96.0/20,197.234.240.0/22,198.41.128.0/17,162.158.0.0/15,104.16.0.0/12,172.64.0.0/13,131.0.72.0/22
  55.       - --entryPoints.traefik.address=:8080
  56.       - --api=true
  57. #      - --api.insecure=true
  58. #      - --serversTransport.insecureSkipVerify=true
  59.       - --log=true
  60.       - --log.level=DEBUG # (Default: error) DEBUG, INFO, WARN, ERROR, FATAL, PANIC
  61.       - --accessLog=true
  62.       - --accessLog.filePath=/traefik.log
  63.       - --accessLog.bufferingSize=100 # Configuring a buffer of 100 lines
  64.       - --accessLog.filters.statusCodes=400-499
  65.       - --providers.docker=true
  66.       - --providers.docker.endpoint="tcp://docker-socket-proxy:2375"
  67.       - --providers.docker.defaultrule=Host(`{{ index .Labels "com.docker.compose.service" }}.$DOMAIN`)
  68.       - --providers.docker.exposedByDefault=false
  69.       - --providers.docker.network=socketproxy
  70.       - --providers.docker.defaultRule=Host({{ trimPrefix / .Name }}.$DOMAIN)
  71.       - --providers.docker.swarmMode=false
  72.       - --providers.file.directory=/rules # Load dynamic configuration from one or more .toml or .yml files in a directory.
  73. #      - --providers.file.filename=${USERDIR}/docker/traefik/traefik_dynamic.toml # Load dynamic configuration from a file.
  74.       - --providers.file.watch=true # Only works on top level files in the rules folder
  75.       - --certificatesResolvers.dns-cloudflare.acme.caServer=https://acme-staging-v02.api.letsencrypt.org/directory # LetsEncrypt Staging Server - uncomment when testing
  76.       - --certificatesResolvers.dns-cloudflare.acme.email=$CLOUDFLARE_EMAIL
  77.       - --certificatesResolvers.dns-cloudflare.acme.storage=/acme.json
  78.       - --certificatesResolvers.dns-cloudflare.acme.dnsChallenge.provider=cloudflare
  79.     ports:
  80.       - target: 80
  81.         published: 80
  82.         protocol: tcp
  83.         mode: host
  84.       - target: 443
  85.         published: 443
  86.         protocol: tcp
  87.         mode: host
  88. #      - target: 8080
  89. #        published: 8080
  90. #        protocol: tcp
  91. #        mode: host
  92.     labels:
  93.       - autoheal=true
  94.       - com.centurylinklabs.watchtower.enable=true
  95.       - traefik.docker.network=t2_proxy
  96.       - traefik.http.routers.http-catchall.entrypoints=http
  97.       - traefik.http.routers.http-catchall.rule=HostRegexp(`{host:.+}`)
  98.       - traefik.http.routers.http-catchall.middlewares=redirect-to-https
  99.       - traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
  100.       - traefik.http.routers.traefik-rtr.entrypoints=https
  101.       - traefik.http.routers.traefik-rtr.rule=Host(`traefik.$DOMAIN`)
  102.       - traefik.http.routers.traefik-rtr.tls=true
  103.       - traefik.http.routers.traefik-rtr.tls.certresolver=dns-cloudflare # Comment out this line after first run of traefik to force the use of wildcard certs
  104.       - traefik.http.routers.traefik-rtr.tls.domains[0].main=$DOMAIN
  105.       - traefik.http.routers.traefik-rtr.tls.domains[0].sans=*.$DOMAIN
  106.       - traefik.http.routers.traefik-rtr.middlewares=middlewares-basic-auth@file
  107.       - traefik.http.routers.traefik-rtr.middlewares=chain-authelia@file
  108.       - traefik.http.routers.traefik-rtr.middlewares=middlewares-secure-headers@file,middlewares-rate-limit@file,middlewares-basic-auth@file
  109. #      - traefik.http.routers.traefik-rtr.middlewares=traefik-headers,middlewares-rate-limit@file,middlewares-basic-auth@file
  110.       - traefik.http.middlewares.traefik-headers.headers.accesscontrolallowmethods=GET, OPTIONS, PUT
  111.       - traefik.http.middlewares.traefik-headers.headers.accesscontrolalloworiginlist=https://$DOMAIN
  112.       - traefik.http.middlewares.traefik-headers.headers.accesscontrolmaxage=100
  113.       - traefik.http.middlewares.traefik-headers.headers.addvaryheader=true
  114.       - traefik.http.middlewares.traefik-headers.headers.allowedhosts=traefik.$DOMAIN
  115.       - traefik.http.middlewares.traefik-headers.headers.hostsproxyheaders=X-Forwarded-Host
  116.       - traefik.http.middlewares.traefik-headers.headers.sslredirect=true
  117.       - traefik.http.middlewares.traefik-headers.headers.sslhost=traefik.$DOMAIN
  118.       - traefik.http.middlewares.traefik-headers.headers.sslforcehost=true
  119.       - traefik.http.middlewares.traefik-headers.headers.sslproxyheaders.X-Forwarded-Proto=https
  120.       - traefik.http.middlewares.traefik-headers.headers.stsseconds=63072000
  121.       - traefik.http.middlewares.traefik-headers.headers.stsincludesubdomains=true
  122.       - traefik.http.middlewares.traefik-headers.headers.stspreload=true
  123.       - traefik.http.middlewares.traefik-headers.headers.forcestsheader=true
  124.       - traefik.http.middlewares.traefik-headers.headers.framedeny=true
  125. #      - traefik.http.middlewares.traefik-headers.headers.customframeoptionsvalue=SAMEORIGIN # This option overrides FrameDeny
  126.       - traefik.http.middlewares.traefik-headers.headers.contenttypenosniff=true
  127.       - traefik.http.middlewares.traefik-headers.headers.browserxssfilter=true
  128. #      - traefik.http.middlewares.traefik-headers.headers.contentsecuritypolicy=frame-ancestors 'none'; object-src 'none'; base-uri 'none';
  129.       - traefik.http.middlewares.traefik-headers.headers.referrerpolicy=same-origin
  130.       - traefik.http.middlewares.traefik-headers.headers.featurepolicy=camera 'none'; geolocation 'none'; microphone 'none'; payment 'none'; usb 'none'; vr 'none';
  131.       - traefik.http.middlewares.traefik-headers.headers.customresponseheaders.X-Robots-Tag=none,noarchive,nosnippet,notranslate,noimageindex,
  132.     networks:
  133.       - t2_proxy:
  134.         - ipv4_address: 172.28.0.2
  135.       - socketproxy
  136.     security_opt:
  137.      - no-new-privileges:true
  138.     restart: always
  139.   socketproxy:
  140.     image: tecnativa/docker-socket-proxy
  141.     container_name: socketproxy
  142.     hostname: socketproxy
  143.     privileged: true
  144.     environment:
  145.       - CONTAINERS: 1
  146.       - SECRETS: 1
  147.       - INFO: 1
  148.       - IMAGES: 1
  149.       - VOLUMES: 1
  150.       - NETWORKS: 1
  151.     networks:
  152.      - socketproxy
  153.     ports:
  154.      - 2375
  155.     volumes:
  156.      - /var/run/docker.sock:/var/run/docker.sock
  157.     labels:
  158.      - autoheal=true
  159.       - com.centurylinklabs.watchtower.enable=true
  160.       - traefik.enable=false
  161.     restart: always
  162.   cf-ddns:
  163.     container_name: cf-ddns
  164.     hostname: cf-ddns
  165.     image: oznu/cloudflare-ddns:latest
  166.     environment:
  167.      - CF_API_KEY_FILE=/run/secrets/cloudflare_api_key
  168.       - ZONE=$DOMAIN
  169.       - PROXIED=true
  170.       - RRTYPE=A
  171.       - DELETE_ON_STOP=false
  172.       - DNS_SERVER=1.1.1.1
  173.     secrets:
  174.      - cloudflare_api_key
  175.     labels:
  176.      - autoheal=true
  177.       - com.centurylinklabs.watchtower.enable=true
  178.       - traefik.enable=false
  179.     restart: always
  180.   authelia:
  181.     image: authelia/authelia:latest
  182.     container_name: authelia
  183.     hostname: authelia
  184.     environment:
  185.       - PGID=$PGID
  186.       - PUID=$PUID
  187.       - TZ=$TZ
  188.     volumes:
  189.      - $DOCKERDIR/authelia:/config
  190.       - $DOCKERDIR/authelia/data:/data
  191.       - $DOCKERDIR/authelia/configuration.yml:/etc/authelia/configuration.yml:ro
  192.       - $DOCKERDIR/authelia/users_database.yml:/etc/authelia/users_database.yml
  193.     labels:
  194.      - autoheal=true
  195.       - com.centurylinklabs.watchtower.enable=true
  196.       - traefik.enable=true
  197.       - traefik.http.routers.authelia.middlewares=authelia-headers
  198.       - traefik.http.middlewares.authelia-headers.headers.browserXssFilter=true
  199.       - traefik.http.middlewares.authelia-headers.headers.customFrameOptionsValue=SAMEORIGIN
  200.       - traefik.http.middlewares.authelia-headers.headers.customResponseHeaders.Cache-Control=no-store
  201.       - traefik.http.middlewares.authelia-headers.headers.customResponseHeaders.Pragma=no-cache
  202.       - traefik.http.routers.authelia.rule=Host(`login.wallace-home.org`)
  203.       - traefik.http.routers.authelia.entrypoints=websecure
  204.       - traefik.http.routers.authelia.tls.certresolver=letsencryptresolver
  205.       - traefik.http.middlewares.authelia.forwardauth.address=http://authelia:9081/api/verify?rd=https://login.wallace-home.org/
  206.       - traefik.http.middlewares.authelia.forwardauth.trustForwardHeader=true
  207.       - traefik.http.middlewares.authelia.forwardauth.authResponseHeaders=Remote-User, Remote-Groups
  208.     expose:
  209.      - 9081
  210.     depends_on:
  211.      - traefik
  212.     networks:
  213.       t2_proxy:
  214.         ipv4_address: 172.28.0.24
  215.     restart: unless-stopped
  216.   autheliadb:
  217.     image: ghcr.io/linuxserver/mariadb
  218.     container_name: autheliadb
  219.     hostname: autheliadb
  220.     environment:
  221.      - PGID=$PGID
  222.       - PUID=$PUID
  223.       - TZ=$TZ
  224.       - MYSQL_DATABASE="authelia"
  225.       - REMOTE_SQL="http://autheliadb.wallace-home.org/authelia.sql,https://autheliadb.wallace-home.org/authelia.sql"
  226.       - MYSQL_ROOT_PASSWORD_FILE=/run/secrets/mysql_root_password
  227.       - MYSQL_PASSWORD_FILE=/run/secrets/mysql_password
  228.       - MYSQL_USER_FILE=/run/secrets/mysql_user
  229.     secrets:
  230.      - mysql_root_password
  231.       - mysql_user
  232.       - mysql_password
  233.     volumes:
  234.      - $DOCKERDIR/autheliadb:/config
  235.     labels:
  236.       - autoheal=true
  237.       - com.centurylinklabs.watchtower.enable=true
  238.       - traefik.enable=false
  239.     ports:
  240.      - 3307:3306
  241.     networks:
  242.       t2_proxy:
  243.         ipv4_address: 172.28.0.25
  244.     restart: always
  245.   redis:
  246.     image: redis:alpine
  247.     container_name: redis
  248.     hostname: redis
  249.     volumes:
  250.      - $DOCKERDIR/redis:/data
  251.     labels:
  252.      - autoheal=true
  253.       - com.centurylinklabs.watchtower.enable=true
  254.       - traefik.enable=false
  255.     networks:
  256.       t2_proxy:
  257.         ipv4_address: 172.28.0.13
  258.     expose:
  259.      - 6379
  260.     restart: unless-stopped
  261.     environment:
  262.      - TZ=$TZ
  263.   rediscommander:
  264.     container_name: rediscommander
  265.     image: rediscommander/redis-commander:latest
  266.     hostname: rediscommander
  267.     security_opt:
  268.      - no-new-privileges:true
  269.     environment:
  270.      - REDIS_HOST=172.28.0.13:6379
  271.       - REDIS_PASSWORD=$REDIS_PASSWORD
  272.     labels:
  273.      - autoheal=true
  274.       - com.centurylinklabs.watchtower.enable=true
  275.       - traefik.enable=false
  276. ## HTTP Routers
  277. #      - traefik.http.routers.rediscommander-rtr.entrypoints=https
  278. #      - traefik.http.routers.rediscommander-rtr.rule=Host(`rediscom.$DOMAIN`)
  279. ## Middlewares
  280. #      - traefik.http.routers.rediscommander-rtr.middlewares=chain-oauth@file
  281. ## HTTP Services
  282. #      - traefik.http.routers.rediscommander-rtr.service=rediscommander-svc
  283. #      - traefik.http.services.rediscommander-svc.loadbalancer.server.port=8081
  284.     ports:
  285.      - 8081:8081
  286.     networks:
  287.       t2_proxy:
  288.         ipv4_address: 172.28.0.26
  289.     restart: unless-stopped
  290.   portainer:
  291.     image: portainer/portainer-ce
  292.     container_name: portainer
  293.     hostname: portainer
  294. #    command: -H unix:///var/run/docker.sock
  295.     priveleged: true
  296.     environment:
  297.      - PGID=$PGID
  298.       - PUID=$PUID
  299.       - TZ=$TZ
  300.       - DOCKER_HOST=tcp://docker-socket-proxy:2375
  301.     depends_on:
  302.      - socketproxy
  303.     volumes:
  304.      - /var/run/docker.sock:/var/run/docker.sock
  305.       - $DOCKERDIR/portainer:/config
  306.     labels:
  307.      - autoheal=true
  308.       - com.centurylinklabs.watchtower.enable=true
  309.       - traefik.enable=false
  310. #      - traefik.network=t2_proxy
  311. #      - traefik.http.routers.portainer-rtr.entrypoints=https
  312. #      - traefik.http.routers.portsiner-rtr.rule=Host(`portainer.$DOMAIN`)
  313. #      - traefik.http.routers.portainer-rtr.tls=true
  314. #      - traefik.http.routers.portainer-rtr.service=portainer-svc
  315. #      - traefik.http.services.portainer-svc.loadbalancer.server.port=9000
  316. #      - traefik.http.routers.portainer-rtr.middlewares=chain-authelia@file
  317.     ports:
  318.      - 9000:9000
  319.     networks:
  320.       - t2_proxy:
  321.         - ipv4_address: 172.28.0.3
  322.       - socketproxy
  323.     restart: always
  324.   watchtower:
  325.     image: containrrr/watchtower
  326.     container_name: watchtower
  327.     hostname: watchtower
  328.     environment:
  329.      - PGID=$PGID
  330.       - PUID=$PUID
  331.       - TZ=$TZ
  332.       - WATCHTOWER_CLEANUP=true
  333.       - WATCHTOWER_REMOVE_VOLUMES=false
  334.       - WATCHTOWER_INCLUDE_STOPPED=true
  335.     volumes:
  336.      - /var/run/docker.sock:/var/run/docker.sock
  337.     labels:
  338.       - autoheal=true
  339.       - com.centurylinklabs.watchtower.enable=true
  340.       - traefik.enable=false
  341.     network_mode: none
  342.     restart: always
  343.   autoheal:
  344.     image: willfarrell/autoheal
  345.     container_name: autoheal
  346.     hostname: autoheal
  347.     environment:
  348.      - PGID=$PGID
  349.       - PUID=$PUID
  350.       - TZ=$TZ
  351.       - AUTOHEAL_CONTAINER_LABEL=all
  352.       - DOCKER_HOST=tcp://docker-socket-proxy:2375
  353.     depends_on:
  354.      - socketproxy
  355.     volumes:
  356.      - /var/run/docker.sock:/var/run/docker.sock
  357.     labels:
  358.      - com.centurylinklabs.watchtower.enable=true
  359.       - traefik.enable=false
  360.     networks:
  361.       - t2_proxy:
  362.         - ipv4_address: 172.28.0.5
  363.       - socketproxy
  364.     mem_limit: 40m
  365.     mem_reservation: 15m
  366.     restart: always
  367. services:
  368. secrets:
  369.  
  370.   phpmyadmin:
  371.     image: ghcr.io/linuxserver/phpmyadmin
  372.     container_name: phpmyadmin
  373.     hostname: phpmyadmin
  374.     environment:
  375.       - PGID=$PGID
  376.       - PUID=$PUID
  377.       - TZ=$TZ      
  378.       - PMA_ARBITRARY=1 #optional
  379.       - PMA_ABSOLUTE_URI=https://phpmyadmin.wallace-home.org #optional
  380.     volumes:
  381.      - $DOCKERDIR/phpmyadmin:/config
  382.     ports:
  383.      - 81:81
  384.     labels:
  385.       - autoheal=true
  386.       - com.centurylinklabs.watchtower.enable=true
  387.       - traefik.enable=false
  388. #      - traefik.network=t2_proxy
  389. #      - traefik.http.routers.phpmyadmin-rtr.entrypoints=https
  390. #      - traefik.http.routers.phpmyadmin-rtr.rule=Host(`phpmyadmin.$DOMAIN`)
  391. #      - traefik.http.routers.phpmyadmin-rtr.tls=true
  392. #      - traefik.http.routers.phpmyadmin-rtr.service=phpmyadmin-svc
  393. #      - traefik.http.services.phpmyadmin-svc.loadbalancer.server.port=81
  394. #      - traefik.http.routers.phpmyadmin-rtr.middlewares=chain-authelia@file
  395.     networks:
  396.       - t2_proxy:
  397.         - ipv4_address: 172.28.0.6
  398.     restart: unless-stopped
  399.   homer:
  400.     image: b4bz/homer
  401.     environment:
  402.      - PGID=$PGID
  403.       - PUID=$PUID
  404.       - TZ=$TZ      
  405.     volumes:
  406.      - $DOCKERDIR/homer/data:/www/assets
  407.     labels:
  408.      - autoheal=true
  409.       - com.centurylinklabs.watchtower.enable=true
  410.       - traefik.enable=true
  411.       - traefik.network=t2_proxy
  412.       - traefik.http.services.dashboard-service.loadbalancer.server.port=8080
  413.       - traefik.http.routers.dashboard.rule=HostHeader(`$DOMAIN``www.$DOMAIN`)
  414.       - traefik.http.routers.dashboard.entrypoints=http
  415.         # For https:
  416.       - traefik.http.routers.dashboard-secure.rule=Host(`$DOMAIN``www.$DOMAIN`)
  417.       - traefik.http.routers.dashboard-secure.entrypoints=https
  418.       - traefik.http.routers.dashboard-secure.tls=true
  419.       - traefik.http.routers.dashboard-secure.tls.certresolver=le
  420.       - traefik.http.middlewares.dashboard-redirect-dashboard-secure.redirectscheme.scheme=https
  421.       - traefik.http.routers.dashboard.middlewares=dashboard-redirect-dashboard-secure
  422. #    ports:
  423. #      - 8080:8080
  424.     depends_on:
  425.      - traefik
  426.     networks:
  427.       - t2_proxy:
  428.         - ipv4_address: 172.28.0.7
  429.   sonarr:
  430.     image: ghcr.io/linuxserver/sonarr
  431.     container_name: sonarr
  432.     hostname: sonarr
  433.     environment:
  434.      - PGID=$PGID
  435.       - PUID=$PUID
  436.       - TZ=$TZ
  437.     volumes:
  438.      - $DOCKERDIR/sonarr:/config
  439.       - $MEDIADIR/TVShows/TVShows:/data/TVShows
  440.       - $MEDIADIR/TVShows/TV.Doc:/data/TVDoc
  441.       - $MEDIADIR/Movies1/TV.Doc:/data/TVDoc1
  442.       - $DOWNLOADS:/data/completed
  443.     labels:
  444.       - autoheal=true
  445.       - com.centurylinklabs.watchtower.enable=true
  446.       - traefik.enable=true
  447.       - traefik.network=t2_proxy
  448. ## HTTP Routers Auth Bypass
  449.       - traefik.http.routers.sonarr-rtr-bypass.entrypoints=https
  450.       - traefik.http.routers.sonarr-rtr-bypass.rule=Host(`sonarr.$DOMAIN`) && (Headers(`X-Api-Key`, `$SONARR_API_KEY`) || Query(`apikey`, `$SONARR_API_KEY`))
  451.       - traefik.http.routers.sonarr-rtr-bypass.priority=100
  452. ##Routers
  453.       - traefik.http.routers.sonarr-rtr.entrypoints=https
  454.       - traefik.http.routers.sonarr-rtr.rule=Host(`sonarr.$DOMAIN`)
  455.       - traefik.http.routers.sonarr-rtr.tls=true
  456.       - traefik.http.routers.sonarr-rtr.service=sonarr-svc
  457.       - traefik.http.routers.sonarr-rtr.priority=99
  458.       - traefik.http.routers.sonarr-rtr.middlewares=chain-authelia@file
  459. ##Services
  460.      - traefik.http.services.sonarr-svc.loadbalancer.server.port=8989
  461. #    ports:
  462. #      - 8989:8989
  463.     depends_on:
  464.      - traefik
  465.     networks:
  466.       - t2_proxy:
  467.         - ipv4_address: 172.28.0.8
  468.     restart: always
  469.   radarr:
  470.     image: ghcr.io/linuxserver/radarr
  471.     container_name: radarr
  472.     hostname: radarr
  473.     environment:
  474.      - PGID=$PGID
  475.       - PUID=$PUID
  476.       - TZ=$TZ
  477.     volumes:
  478.      - $DOCKERDIR/radarr:/config
  479.       - $MEDIADIR/Movies/Animated:/data/Animated1
  480.       - $MEDIADIR/Movies1/Animated:/data/Animated2
  481.       - $MEDIADIR/Movies3/Animated:/data/Animated3
  482.       - $MEDIADIR/Movies/Horror:/data/Horror1
  483.       - $MEDIADIR/Movies1/Horror:/data/Horror2
  484.       - $MEDIADIR/Movies3/Horror:/data/Horror3
  485.       - $MEDIADIR/Movies/Movies:/data/Movies1
  486.       - $MEDIADIR/Movies1/Movies:/data/Movies2
  487.       - $MEDIADIR/Movies3/Movies:/data/Movies3
  488.       - $MEDIADIR/Movies3/Mov.Doc:/data/documentaries
  489.       - $DOWNLOADS:/data/completed
  490.     labels:
  491.      - autoheal=true
  492.       - com.centurylinklabs.watchtower.enable=true
  493.       - traefik.enable=true
  494.       - traefik.network=t2_proxy
  495. ## HTTP Routers Auth Bypass
  496.       - traefik.http.routers.radarr-rtr-bypass.entrypoints=https
  497.       - traefik.http.routers.radarr-rtr-bypass.rule=Host(`radarr.$DOMAIN`) && (Headers(`X-Api-Key`, `$RADARR_API_KEY`) || Query(`apikey`, `$RADARR_API_KEY`))
  498.       - traefik.http.routers.radarr-rtr-bypass.priority=100
  499. ##Routers
  500.       - traefik.http.routers.radarr-rtr.entrypoints=https
  501.       - traefik.http.routers.radarr-rtr.rule=Host(`radarr.$DOMAIN`)
  502.       - traefik.http.routers.radarr-rtr.tls=true
  503.       - traefik.http.routers.radarr-rtr.middlewares=chain-authelia@file
  504.       - traefik.http.routers.radarr-rtr.priority=99
  505.       - traefik.http.routers.radarr-rtr.service=radarr-svc
  506. ##Services
  507.       - traefik.http.services.radarr-svc.loadbalancer.server.port=7878
  508. #    ports:
  509. #      - 7878:7878
  510.     depends_on:
  511.      - traefik
  512.     networks:
  513.       - t2_proxy:
  514.         - ipv4_address: 172.28.0.9
  515.     restart: always
  516.   lidarr:
  517.     image: ghcr.io/linuxserver/lidarr
  518.     container_name: lidarr
  519.     hostname: lidarr
  520.     environment:
  521.      - PGID=$PGID
  522.       - PUID=$PUID
  523.       - TZ=$TZ
  524.     volumes:
  525.      - $DOCKERDIR/lidarr:/config
  526.       - $MEDIADIR/Movies1/Music:/data/Music
  527.       - $DOWNLOADS:/data/completed
  528.     labels:
  529.       - autoheal=true
  530.       - com.centurylinklabs.watchtower.enable=true
  531.       - traefik.enable=true
  532.       - traefik.network=t2_proxy
  533.       - traefik.http.routers.lidarr-rtr.entrypoints=https
  534.       - traefik.http.routers.lidarr-rtr.rule=Host(`lidarr.$DOMAIN`)
  535.       - traefik.http.routers.lidarr-rtr.tls=true
  536.       - traefik.http.routers.lidarr-rtr.service=lidarr-svc
  537.       - traefik.http.services.lidarr-svc.loadbalancer.server.port=8686
  538.       - traefik.http.routers.lidarr-rtr.middlewares=chain-authelia@file
  539. #    ports:
  540. #      - 8686:8686
  541.     depends_on:
  542.      - traefik
  543.     networks:
  544.       - t2_proxy:
  545.         - ipv4_address: 172.28.0.10
  546.     restart: always
  547.   bazarr:
  548.     image: ghcr.io/linuxserver/bazarr
  549.     container_name: bazarr
  550.     hostname: bazarr
  551.     environment:
  552.      - PGID=$PGID
  553.       - PUID=$PUID
  554.       - TZ=$TZ
  555.     volumes:
  556.      - $DOCKERDIR/bazarr:/config
  557.       - $MEDIADIR/Movies/Animated:/data/Animated1
  558.       - $MEDIADIR/Movies1/Animated:/data/Animated2
  559.       - $MEDIADIR/Movies3/Animated:/data/Animated3
  560.       - $MEDIADIR/Movies/Horror:/data/Horror1
  561.       - $MEDIADIR/Movies1/Horror:/data/Horror2
  562.       - $MEDIADIR/Movies3/Horror:/data/Horror3
  563.       - $MEDIADIR/Movies/Movies:/data/Movies1
  564.       - $MEDIADIR/Movies1/Movies:/data/Movies2
  565.       - $MEDIADIR/Movies3/Movies:/data/Movies3
  566.       - $MEDIADIR/TVShows/TVShows:/data/TVShows      
  567.       - $MEDIADIR/TVShows/TV.Doc:/data/TVDoc
  568.       - $MEDIADIR/Movies1/TV.Doc:/data/TVDoc1
  569.       - $MEDIADIR/Movies3/Mov.Doc:/data/documentaries
  570.     labels:
  571.      - autoheal=true
  572.       - com.centurylinklabs.watchtower.enable=true
  573.       - traefik.enable=true
  574.       - traefik.network=t2_proxy
  575.       - traefik.http.routers.bazarr-rtr.entrypoints=https
  576.       - traefik.http.routers.bazarr-rtr.rule=Host(`bazarr.$DOMAIN`)
  577.       - traefik.http.routers.bazarr-rtr.tls=true
  578.       - traefik.http.routers.bazarr-rtr.service=bazarr-svc
  579.       - traefik.http.services.bazarr-svc.loadbalancer.server.port=6767
  580.       - traefik.http.routers.bazarr-rtr.middlewares=chain-authelia@file
  581. #    ports:
  582. #      - 6767:6767
  583.     depends_on:
  584.      - traefik
  585.     networks:
  586.       - t2_proxy:
  587.         - ipv4_address: 172.28.0.11
  588.     restart: always
  589.   prowlarr:
  590.     container_name: prowlarr
  591.     image: linuxserver/prowlarr
  592.     hostname: prowlarr
  593.     environment:
  594.      - PUID=$PUID
  595.       - PGID=$PGID
  596.       - UMASK=002
  597.       - TZ=$TZ
  598.     volumes:
  599.      - $DOCKERDIR/prowlarr:/config
  600. #    ports:
  601. #      - 9696:9696
  602.     labels:
  603.      - autoheal=true
  604.       - com.centurylinklabs.watchtower.enable=true
  605.       - traefik.enable=true
  606.       - traefik.network=t2_proxy
  607.       - traefik.http.routers.prowlarr-rtr.entrypoints=https
  608.       - traefik.http.routers.prowlarr-rtr.rule=Host(`prowlarr.$DOMAIN`)
  609.       - traefik.http.routers.prowlarr-rtr.tls=true
  610.       - traefik.http.routers.prowlarr-rtr.middlewares=chain-authelia@file
  611.       - traefik.http.routers.prowlarr-rtr.service=prowlarr-svc
  612.       - traefik.http.services.prowlarr-svc.loadbalancer.server.port=9696
  613.     depends_on:
  614.      - traefik
  615.     networks:
  616.       - t2_proxy:
  617.         - ipv4_address: 172.28.0.12
  618.     restart: unless-stopped
  619.   overseerr:
  620.     image: sctx/overseerr
  621.     container_name: overseerr
  622.     hostname: overseerr
  623.     environment:
  624.       - PGID=$PGID
  625.       - PUID=$PUID
  626.       - TZ=$TZ
  627.       - LOG_LEVEL=info
  628.     volumes:
  629.      - $DOCKERDIR/overseerr:/config
  630.     labels:
  631.       - autoheal=true
  632.       - com.centurylinklabs.watchtower.enable=true
  633.       - traefik.enable=true
  634.       - traefik.network=t2_proxy
  635.       - traefik.http.routers.overseerr-rtr.entrypoints=https
  636.       - traefik.http.routers.overseerr-rtr.rule=Host(`overseerr.$DOMAIN`)
  637.       - traefik.http.routers.overseerr-rtr.tls=true
  638.       - traefik.http.routers.overseerr-rtr.service=overseerr-svc
  639.       - traefik.http.services.overseerr-svc.loadbalancer.server.port=5055
  640.       - traefik.http.routers.overseerr-rtr.middlewares=chain-authelia@file
  641. #    ports:
  642. #      - 5055:5055
  643.     depends_on:
  644.      - traefik
  645.     networks:
  646.       - t2_proxy:
  647.         - ipv4_address: 172.28.0.14
  648.   transmission:
  649.     image: haugene/transmission-openvpn
  650.     container_name: transmission
  651.     hostname: transmission
  652.     cap_add:
  653.      - NET_ADMIN
  654.     devices:
  655.      - /dev/net/tun
  656. #    ports:
  657. #      - 9091:9091
  658. #      - 8888:8888
  659.     dns:
  660.      - 209.222.18.222
  661.       - 209.222.18.218
  662.     volumes:
  663.      - /etc/localtime:/etc/localtime:ro
  664.       - $DOCKERDIR/transmission:/data
  665.       - $DOCKERDIR/transmission/openvpn:/etc/openvpn/custom/default.ovpn:ro
  666.       - $DOWNLOADS:/data/Downloads
  667.     environment:
  668.       - PGID=$PGID
  669.       - PUID=$PUID
  670.       - TZ=$TZ
  671.       - UMASK=002
  672.       - OPENVPN_PROVIDER=PIA
  673.       - OPENVPN_CONFIG=switzerland,ca_toronto,ca_montreal,ca_vancouver
  674.       - PIA_OPENVPN_CONFIG_BUNDLE=openvpn
  675.       - OPENVPN_OPTS=--inactive 3600 --ping 10 --ping-exit 60
  676.       - LOCAL_NETWORK=192.168.7.0/24
  677.       - TRANSMISSION_RPC_AUTHENTICATION_REQUIRED=true
  678.       - TRANSMISSION_RPC_HOST_WHITELIST="172.28.0.1,192.168.*.*"
  679.       - TRANSMISSION_MAX_PEERS_GLOBAL=9999
  680.       - TRANSMISSION_PEER_LIMIT_GLOBAL=9999
  681.       - TRANSMISSION_PEER_LIMIT_PER_TORRENT=9999
  682.       - TRANSMISSION_RPC_PASSWORD_FILE=/run/secrets/transmission_rpc_pass
  683.       - TRANSMISSION_RPC_USERNAME_FILE=/run/secrets/transmission_rpc_user
  684.       - TRANSMISSION_DOWNLOAD_DIR=/data/completed
  685.       - OPENVPN_USERNAME_FILE=/run/secrets/openvpn_username
  686.       - OPENVPN_PASSWORD_FILE=/run/secrets/openvpn_password
  687.     secrets:
  688.      - transmission_rpc_pass
  689.       - transmission_rpc_user
  690.       - openvpn_username
  691.       - openvpn_password
  692.     labels:
  693.       - autoheal=true
  694.       - com.centurylinklabs.watchtower.enable=true
  695.       - traefik.enable=true
  696.       - traefik.network=t2_proxy
  697.       - traefik.http.routers.transmission-rtr.entrypoints=https
  698.       - traefik.http.routers.transmission-rtr.rule=Host(`transmission.$DOMAIN`)
  699.       - traefik.http.routers.transmission-rtr.tls=true
  700.       - traefik.http.routers.transmission-rtr.service=transmission-svc
  701.       - traefik.http.services.transmission-svc.loadbalancer.server.port=9091
  702.       - traefik.http.routers.transmission-rtr.middlewares=chain-authelia@file
  703. #    ports:
  704. #      - 9091:9091
  705.     depends_on:
  706.      - traefik
  707.     networks:
  708.       - t2_proxy:
  709.         - ipv4_address: 172.28.0.15
  710.     restart: always
  711.   tautulli:
  712.     image: ghcr.io/linuxserver/tautulli
  713.     container_name: tautulli
  714.     hostname: tautulli
  715.     environment:
  716.      - PGID=$PGID
  717.       - PUID=$PUID
  718.       - TZ=$TZ
  719.     volumes:
  720.      - $DOCKERDIR/tautulli:/config
  721.     labels:
  722.       - autoheal=true
  723.       - com.centurylinklabs.watchtower.enable=true
  724.       - traefik.enable=true
  725.       - traefik.network=t2_proxy
  726.       - traefik.http.routers.tautulli-rtr.entrypoints=https
  727.       - traefik.http.routers.tautulli-rtr.rule=Host(`tautulli.$DOMAIN`)
  728.       - traefik.http.routers.tautulli-rtr.tls=true
  729.       - traefik.http.routers.tautulli-rtr.service=radarr-svc
  730.       - traefik.http.services.tautulli-svc.loadbalancer.server.port=8181
  731.       - traefik.http.routers.tautulli-rtr.middlewares=chain-authelia@file
  732. #    ports:
  733. #      - 8181:8181
  734.     depends_on:
  735.      - traefik
  736.     networks:
  737.       - t2_proxy:
  738.         - ipv4_address: 172.28.0.16
  739.     restart: always
  740.   plex:
  741.     image: ghcr.io/linuxserver/plex
  742.     container_name: plex
  743.     hostname: plex
  744.     environment:
  745.       - PGID=$PGID
  746.       - PUID=$PUID
  747.       - TZ=$TZ
  748.       - VERSION=docker
  749. #    ports:
  750. #      - 32400:32400
  751. #      - 3005:3005/tcp
  752. #      - 8324:8324/tcp
  753. #      - 32469:32469/tcp
  754. #      - 1900:1900/udp
  755. #      - 32410:32410/udp
  756. #      - 32412:32412/udp
  757. #      - 32413:32413/udp
  758. #      - 32414:32414/udp
  759.     volumes:
  760.       - $DOCKERDIR/plex:/config
  761.       - $MEDIADIR/Extra2/Transcode:/transcode
  762.       - $MEDIADIR/Movies/Animated:/data/Animated1
  763.       - $MEDIADIR/Movies1/Animated:/data/Animated2
  764.       - $MEDIADIR/Movies3/Animated:/data/Animated3
  765.       - $MEDIADIR/Movies/Horror:/data/Horror2
  766.       - $MEDIADIR/Movies1/Horror:/data/Horror2
  767.       - $MEDIADIR/Movies3/Horror:/data/Horror3
  768.       - $MEDIADIR/Movies/Movies:/data/Movies1
  769.       - $MEDIADIR/Movies1/Movies:/data/Movies2
  770.       - $MEDIADIR/Movies3/Movies:/data/Movies3
  771.       - $MEDIADIR/TVShows/TVShows:/data/TVShows
  772.       - $MEDIADIR/TVShows/TV.Doc:/data/TVDoc
  773.       - $MEDIADIR/Movies3/Mov.Doc:/data/documentaries
  774.       - $MEDIADIR/Movies1/TV.Doc:/data/TVDoc1
  775.       - $MEDIADIR/Movies1/Music:/data/Music
  776.       - $MEDIADIR/Movies3/Audiobooks:/data/Audiobooks
  777.       - $MEDIADIR/Movies1/Photos:/data/Photos
  778.     labels:
  779.      - autoheal=true
  780.       - com.centurylinklabs.watchtower.enable=true
  781.       - traefik.enable=false
  782. #      - traefik.network=t2_proxy
  783. #      - traefik.http.routers.plex-rtr.entrypoints=https
  784. #      - traefik.http.routers.plex-rtr.rule=Host(`plex.$DOMAIN`)
  785. #      - traefik.http.routers.plex-rtr.tls=true
  786. #      - traefik.http.routers.plex-rtr.service=plex-svc
  787. #      - traefik.http.services.plex-svc.loadbalancer.server.port=32400
  788. #      - traefik.http.routers.plex-rtr.middlewares=chain-authelia@file
  789.     network_mode: host
  790. #      networks:
  791. #      t2_proxy:
  792. #        ipv4_address: 172.28.0.17
  793.     restart: always
  794.   jellyfin:
  795.     image: ghcr.io/linuxserver/jellyfin
  796.     container_name: jellyfin
  797.     hostname: jellyfin
  798.     environment:
  799.       - PGID=$PGID
  800.       - PUID=$PUID
  801.       - TZ=$TZ
  802.       - JELLYFIN_PublishedServerUrl=192.168.7.76 `#optional`
  803.     volumes:
  804.       - $DOCKERDIR/jellyfin:/config
  805.       - $MEDIADIR/Movies/Animated:/data/Animated1
  806.       - $MEDIADIR/Movies1/Animated:/data/Animated2
  807.       - $MEDIADIR/Movies3/Animated:/data/Animated3
  808.       - $MEDIADIR/Movies/Horror:/data/Horror1
  809.       - $MEDIADIR/Movies1/Horror:/data/Horror2
  810.       - $MEDIADIR/Movies3/Horror:/data/Horror3
  811.       - $MEDIADIR/Movies/Movies:/data/Movies1
  812.       - $MEDIADIR/Movies1/Movies:/data/Movies2
  813.       - $MEDIADIR/Movies3/Movies:/data/Movies3
  814.       - $MEDIADIR/TVShows/TVShows:/data/TVShows
  815.       - $MEDIADIR/TVShows/TV.Doc:/data/TVDoc
  816.       - $MEDIADIR/Movies3/Mov.Doc:/data/documentaries
  817.       - $MEDIADIR/Movies1/TV.Doc:/data/TVDoc1
  818.       - $MEDIADIR/Movies1/Music:/data/Music
  819.       - $MEDIADIR/Movies3/Audiobooks:/data/Audiobooks
  820.       - $MEDIADIR/Movies1/Photos:/data/Photos
  821.     labels:
  822.      - autoheal=true
  823.       - com.centurylinklabs.watchtower.enable=true
  824.       - traefik.enable=false
  825. #      - traefik.network=t2_proxy
  826. #      - traefik.http.routers.jellyfin-rtr.entrypoints=https
  827. #      - traefik.http.routers.jellyfin-rtr.rule=Host(`jellyfin.$DOMAIN`)
  828. #      - traefik.http.routers.jellyfin-rtr.tls=true
  829. #      - traefik.http.routers.jellyfin-rtr.service=jellyfin-svc
  830. #      - traefik.http.services.jellyfin-svc.loadbalancer.server.port=8096
  831. #      - traefik.http.routers.jellyfin-rtr.middlewares=chain-authelia@file
  832.     network_mode: host
  833. #      t2_proxy:
  834. #        ipv4_address: 172.28.0.18
  835.     restart: always
  836.   unmanic:
  837.     image: josh5/unmanic:latest
  838.     container_name: unmanic
  839.     hostname: unmanic
  840.     environment:
  841.      - PGID=$PGID
  842.       - PUID=$PUID
  843.       - TZ=$TZ
  844.     volumes:
  845.      - $DOCKERDIR/unmanic:/config
  846.       - $MEDIADIR/Movies/Animated:/data/Animated1
  847.       - $MEDIADIR/Movies1/Animated:/data/Animated2
  848.       - $MEDIADIR/Movies3/Animated:/data/Animated3
  849.       - $MEDIADIR/Movies/Horror:/data/Horror1
  850.       - $MEDIADIR/Movies1/Horror:/data/Horror2
  851.       - $MEDIADIR/Movies3/Horror:/data/Horror3
  852.       - $MEDIADIR/Movies/Movies:/data/Movies1
  853.       - $MEDIADIR/Movies1/Movies:/data/Movies2
  854.       - $MEDIADIR/Movies3/Movies:/data/Movies3
  855.       - $MEDIADIR/TVShows/TVShows:/data/TVShows
  856.       - $MEDIADIR/TVShows/TV.Doc:/data/TVDoc
  857.       - $MEDIADIR/Movies3/Mov.Doc:/data/documentaries
  858.       - $MEDIADIR/Movies1/TV.Doc:/data/TVDoc1
  859.       - $TRANSCODES:/tmp/unmanic
  860.     labels:
  861.       - autoheal=true
  862.       - com.centurylinklabs.watchtower.enable=true
  863.       - traefik.enable=true
  864.       - traefik.network=t2_proxy
  865.       - traefik.http.routers.unmanic-rtr.entrypoints=https
  866.       - traefik.http.routers.unmanic-rtr.rule=Host(`unmanic.$DOMAIN`)
  867.       - traefik.http.routers.unmanic-rtr.tls=true
  868.       - traefik.http.routers.unmanic-rtr.service=unmanic-svc
  869.       - traefik.http.services.unmanic-svc.loadbalancer.server.port=8888
  870.       - traefik.http.routers.unmanic-rtr.middlewares=chain-authelia@file
  871. #    ports:
  872. #      - 8888:8888
  873.     depends_on:
  874.      - traefik
  875.     networks:
  876.       - t2_proxy:
  877.         - ipv4_address: 172.28.0.19
  878.     restart: always
  879.   whoami:
  880.    # A container that exposes an API to show its IP address
  881.     image: traefik/whoami
  882.     labels:
  883.      - traefik.http.routers.whoami.rule=Host(`whoami.docker.localhost`)
  884.     depends_on:
  885.      - traefik
  886.     networks:
  887.      - t2_proxy
  888.   nextcloud:
  889.     image: ghcr.io/linuxserver/nextcloud
  890.     container_name: nextcloud
  891.     hostname: nextcloud
  892.     environment:
  893.      - PGID=$PGID
  894.       - PUID=$PUID
  895.       - TZ=$TZ
  896.     volumes:
  897.      - $DOCKERDIR/nextcloud/config:/config
  898.       - $MEDIADIR/Movies1/Photos:/data/Photos
  899.     links:
  900.      - nextclouddb
  901.       - clamav
  902.       - nextcloud_redis
  903.     labels:
  904.      - autoheal=true
  905.       - com.centurylinklabs.watchtower.enable=true
  906.       - traefik.enable=true
  907.       - traefik.network=t2_proxy
  908.       - traefik.http.routers.nextcloud-rtr.entrypoints=https
  909.       - traefik.http.routers.nextcloud-rtr.rule=Host(`nextcloud.$DOMAIN`)
  910.       - traefik.http.routers.nextcloud-rtr.tls=true
  911.       - traefik.tcp.routers.nextcloud-tcp.tls.passthrough=true
  912.       - traefik.http.routers.nextcloud-rtr.service=nextcloud-svc
  913.       - traefik.http.services.nextcloud-svc.loadbalancer.server.port=443
  914.       - traefik.http.routers.nextcloud-rtr.middlewares=chain-authelia@docker
  915. #    ports:
  916. #      - 443:443
  917.     depends_on:
  918.      - nextclouddb
  919.       - clamav
  920.       - nextcloud_redis
  921.       - traefik
  922.     networks:
  923.       - t2_proxy:
  924.         - ipv4_address: 172.28.0.20
  925.     restart: always
  926.   nextclouddb:
  927.     image: ghcr.io/linuxserver/mariadb
  928.     container_name: nextclouddb
  929.     hostname: nextclouddb
  930.     environment:
  931.      - PGID=$PGID
  932.       - PUID=$PUID
  933.       - TZ=$TZ
  934.       - MYSQL_DATABASE="nextcloud"
  935.       - MYSQL_ROOT_PASSWORD_FILE=/run/secrets/mysql_root_password
  936.       - MYSQL_PASSWORD_FILE=/run/secrets/mysql_password
  937.       - MYSQL_USER_FILE=/run/secrets/mysql_user
  938.       - REMOTE_SQL="http://nextcloud.wallace-home.org/nextcloud.sql,https://nextcloud.wallace-home.org/nextcloud.sql"
  939.     secrets:
  940.      - mysql_root_password
  941.       - mysql_user
  942.       - mysql_password
  943.     volumes:
  944.      - $DOCKERDIR/mariadb/nextcloud:/config
  945.     depends_on:
  946.      - nextcloud
  947.     labels:
  948.       - autoheal=true
  949.       - com.centurylinklabs.watchtower.enable=true
  950.       - traefik.enable=false
  951.     ports:
  952.      - 3306:3306
  953.     networks:
  954.       - t2_proxy:
  955.         - ipv4_address: 172.28.0.23
  956.     restart: always
  957.   clamav:
  958.     image: mkodockx/docker-clamav:alpine
  959.     container_name: clamav
  960.     hostname: clamav
  961.     environment:
  962.      - PGID=$PGID
  963.       - PUID=$PUID
  964.       - TZ=$TZ
  965.     volumes:
  966.      - $MEDIADIR/Movies1/Photos:/data/Photos
  967.       - $DOCKERDIR/clamav:/var/lib/clamav
  968.     depends_on:
  969.      - nextcloud
  970.     ports:
  971.      - 3310:3310
  972.     networks:
  973.       - t2_proxy:
  974.         - ipv4_address: 172.28.0.22
  975.     labels:
  976.      - autoheal=true
  977.       - com.centurylinklabs.watchtower.enable=true
  978.       - traefik.enable=false
  979.     restart: always
  980.   nextcloud_redis:
  981.     image: redis:5
  982.     container_name: nextcloud_redis
  983.     hostname: nextcloud_redis
  984.     volumes:
  985.      - $DOCKERDIR/nextcloud_redis/redis:/data
  986.     labels:
  987.      - autoheal=true
  988.       - com.centurylinklabs.watchtower.enable=true
  989.       - traefik.enable=false
  990.     networks:
  991.       - t2_proxy:
  992.         - ipv4_address: 172.28.0.21
  993.     expose:
  994.      - 6380
  995.     restart: always
  996. networks:
  997.   t2_proxy:
  998.     external:
  999.       name: t2_proxy
  1000.   default:
  1001.     driver: bridge
  1002.   socketproxy:
  1003.     external:
  1004.       name: socketproxy
  1005. networks:
  1006.   t2_proxy:
  1007.     external:
  1008.       name: t2_proxy
  1009.   default:
  1010.     driver: bridge
  1011.   socketproxy:
  1012.     internal:
  1013.       name: socketproxy
Add Comment
Please, Sign In to add comment