version: '3' services: authelia: container_name: authelia image: authelia/authelia environment: - TZ=${TZ} ports: - 9091:9091 restart: always volumes: - ${DOCKERCONFIGS}/authelia/config:/config hbbr: container_name: hbbr image: rustdesk/rustdesk-server:latest command: hbbr -k _ ports: - 21117:21117 - 21119:21119 restart: always volumes: - ${DOCKERCONFIGS}/rustdesk/hbbr:/root hbbs: container_name: hbbs image: rustdesk/rustdesk-server:latest command: hbbs -r aknlw.com:21117 -k _ ports: - 21115:21115 - 21116:21116 - 21116:21116/udp - 21118:21118 depends_on: - hbbr restart: always volumes: - ${DOCKERCONFIGS}/rustdesk/hbbs:/root kutt: container_name: kutt image: kutt/kutt:latest environment: DB_HOST: kutt-postgres DB_NAME: kutt DB_USER: kutt DB_PASSWORD: kutt REDIS_HOST: kutt-redis env_file: - .env command: ["./wait-for-it.sh", "kutt-postgres:5432", "--", "npm", "start"] depends_on: - kutt-postgres - kutt-redis ports: - 3000:3000/tcp restart: always kutt-redis: container_name: kutt-redis image: redis:6.0-alpine restart: always volumes: - ${DOCKERCONFIGS}/kutt/redis_data:/data kutt-postgres: container_name: kutt-postgres image: postgres:12-alpine environment: - POSTGRES_USER=kutt - POSTGRES_PASSWORD=kutt - POSTGRES_DB=kutt restart: always volumes: - ${DOCKERCONFIGS}/kutt/postgres_data:/var/lib/postgresql/data nginxproxymanager: container_name: nginxproxymanager image: jc21/nginx-proxy-manager:2.9.22 environment: - X_FRAME_OPTIONS=sameorigin - DB_SQLITE_FILE=/data/database.sqlite ports: - 443:443/tcp - 80:80/tcp - 81:81/tcp restart: always volumes: - ${DOCKERCONFIGS}/nginxproxymanager/data:/data - ${DOCKERCONFIGS}/nginxproxymanager/letsencrypt:/etc/letsencrypt - ${DOCKERCONFIGS}/nginxproxymanager/snippets:/snippets:ro - /etc/localtime:/etc/localtime:ro nginxwebdav: container_name: nginxwebdav image: dgraziotin/nginx-webdav-nononsense environment: - PUID=${PUID} - PGID=${PGID} - TZ=${TZ} - WEBDAV_USERNAME=akanealw - WEBDAV_PASSWORD=REBHv599XdhU4VScXXq7 - SERVER_NAMES=localhost,192.168.1.4,webdav.akanealw.com - TIMEOUTS_S=1200 - CLIENT_MAX_BODY_SIZE=120M ports: - 32080:80 restart: always volumes: - ${DOCKERCONFIGS}/nginxwebdav/config:/config - ${DOCKERCONFIGS}/nginxwebdav/data:/data syncthing-relay-discovery: container_name: syncthing image: t4skforce/syncthing-relay-discovery:latest environment: RELAY_OPTS: DISC_OPTS: POOLS: ports: - 22067:22067 - 22026:22026 restart: always volumes: - ${DOCKERCONFIGS}/syncthing:/home/syncthing/certs vaultwarden: container_name: vaultwarden image: vaultwarden/server:latest environment: - TZ=${TZ} - ADMIN_TOKEN=h/oRssGu83I1E1WQGiSchYMAJnM0JcDXmjeI/A3QgMCasn/IK9zZldH5FXim0rSi - DATABASE_URL=data/db.sqlite3 - DISABLE_ADMIN_TOKEN=false - DOMAIN=https://bitwarden.akanealw.com - ENABLE_DB_WAL=true - INVITATIONS_ALLOWED=false - SHOW_PASSWORD_HINT=false - SIGNUPS_ALLOWED=false - SIGNUPS_VERIFY=false - SMTP_PORT=587 - SMTP_SSL=true ports: - 8089:80/tcp restart: always volumes: - ${DOCKERCONFIGS}/vaultwarden:/data - /etc/localtime:/etc/localtime:ro wg-easy: container_name: wg-easy image: weejewel/wg-easy environment: - WG_HOST=${WG_HOST} - PASSWORD=${WG_PASSWORD} - WG_DEFAULT_DNS=162.222.10.80, 9.9.9.9 - WG_PORT=51830 - WG_PERSISTENT_KEEPALIVE=25 - WG_DEFAULT_ADDRESS=10.8.0.x - WG_MTU=1420 - WG_ALLOWED_IPS=10.8.0.0/24 cap_add: - NET_ADMIN - SYS_MODULE sysctls: - net.ipv4.ip_forward=1 - net.ipv4.conf.all.src_valid_mark=1 ports: - "51830:51820/udp" - "51831:51821/tcp" restart: always volumes: - ${DOCKERCONFIGS}/wireguard:/etc/wireguard networks: default: