version: "2.4" services: mariadb: image: linuxserver/mariadb:latest container_name: mariadb env_file: - .env environment: - PUID=1000 - PGID=1000 - TZ=America/Los_Angeles - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} - MYSQL_DATABASE=${MYSQL_DATABASE} - MYSQL_USER=${MYSQL_USER} - MYSQL_PASSWORD=${MYSQL_PASSWORD} volumes: - mariadb:/config networks: - docker-network restart: unless-stopped bitwarden: image: vaultwarden/server:latest container_name: bitwarden_rs security_opt: - no-new-privileges=true env_file: - .env environment: - PUID=1000 - PGID=1000 - TZ=America/Los_Angeles volumes: - bitwarden:/web-vault - bitwarden_data:/data networks: - docker-network depends_on: - mariadb restart: unless-stopped collabora: image: collabora/code:latest container_name: collabora hostname: collabora cap_add: - MKNOD env_file: - .env environment: - PUID=1001 - PGID=1002 - TZ=America/Los_Angeles - username=${COLLABORA_USERNAME} - password=${COLLABORA_PASSWORD} - domain='nextcloud\.thelyoncompany\.com'|'collabora\.thelyoncompany\.com' - extra_params='--o:ssl.enable=false --o:ssl.termination=true' volumes: - collabora:/etc/loolwsd - collabora_data:/opt/lool - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro networks: - docker-network depends_on: - swag restart: unless-stopped nextcloud: image: linuxserver/nextcloud:latest container_name: nextcloud hostname: nextcloud environment: - PUID=1000 - PGID=1000 - TZ=America/Los_Angeles volumes: - nextcloud:/config - nextcloud_data:/data networks: - docker-network depends_on: - mariadb healthcheck: test: ["CMD-SHELL", "curl -f http://nextcloud:80 || exit 1"] interval: 1m30s timeout: 10s retries: 3 restart: unless-stopped whoogle-search: image: benbusby/whoogle-search:latest container_name: whoogle-search pids_limit: 50 mem_limit: 256mb memswap_limit: 256mb user: whoogle security_opt: - no-new-privileges cap_drop: - ALL tmpfs: - /config/:size=10M,uid=927,gid=927,mode=1700 - /var/lib/tor/:size=15M,uid=927,gid=927,mode=1700 - /run/tor/:size=1M,uid=927,gid=927,mode=1700 environment: - WHOOGLE_PROXY_TYPE=https - WHOOGLE_CONFIG_DISABLE=0 - WHOOGLE_CONFIG_THEME=system - WHOOGLE_CONFIG_TOR=0 - WHOOGLE_CONFIG_VIEW_IMAGE=1 - WHOOGLE_CONFIG_COUNTRY=US - WHOOGLE_CONFIG_LANGUAGE=lang_en - WHOOGLE_CONFIG_SEARCH_LANGUAGE=lang_en - WHOOGLE_CONFIG_URL=https://search.thelyoncompany.com - WHOOGLE_RESULTS_PER_PAGE=30 - WHOOGLE_AUTOCOMPLETE=1 - WHOOGLE_CONFIG_ALTS=1 - WHOOGLE_ALT_TW=farside.link/nitter - WHOOGLE_ALT_YT=farside.link/invidious - WHOOGLE_ALT_IG=farside.link/bibliogram/u - WHOOGLE_ALT_RD=farside.link/libreddit - WHOOGLE_ALT_MD=farside.link/scribe - WHOOGLE_ALT_TL=farside.link/lingva - WHOOGLE_ALT_IMG=farside.link/rimgo - WHOOGLE_ALT_WIKI=farside.link/wikiless - WHOOGLE_ALT_IMDB=farside.link/libremdb - WHOOGLE_ALT_QUORA=farside.link/quetre networks: - docker-network depends_on: - swag restart: unless-stopped swag: image: linuxserver/swag:latest container_name: swag cap_add: - NET_ADMIN environment: - PUID=1000 - PGID=1000 - TZ=America/Los_Angeles - URL=thelyoncompany.com - EMAIL=edwin@thelyoncompany.com - SUBDOMAINS=bitwarden,collabora,nextcloud,search - ONLY_SUBDOMAINS=true - EXTRA_DOMAINS=nextcloud.thelyoncompany.com,collabora.thelyoncompany.com,bitwarden.thelyoncompany.com,search.thelyoncompany.com - VALIDATION=dns - DNSPLUGIN=cloudflare volumes: - nginx:/config ports: - 80:80 - 443:443 networks: - docker-network depends_on: - mariadb restart: unless-stopped volumes: nginx: external: true mariadb: external: true nextcloud: external: true nextcloud_data: external: true bitwarden: external: true bitwarden_data: external: true collabora: external: true collabora_data: external: true networks: docker-network: external: true