default_restart_policy: unless-stopped configs_dir: "/opt/configs-privfrontends" configs_dir_local: "./configs" compose_dir: "/opt/docker-privfrontends" data_dir: "/opt/data-privfrontends" apps: groups: hyperpipe: needs_configs_dir: true needs_data_dir: false docker_settings: services: - name: hyperpipe-frontend image: codeberg.org/hyperpipe/hyperpipe entrypoint: sh '/new-entrypoint.sh' ports: - "8843:80" mounts: - "{{configs_dir}}/hyperpipe/entrypoint.sh:/new-entrypoint.sh" - name: hyperpipe-backend image: codeberg.org/hyperpipe/hyperpipe-backend environment: HYP_PROXY: "{% if server_prefix == 'eu' %}proxy.piped.projectsegfau.lt{%else%}pipedproxy.{{server_prefix}}.projectsegfau.lt{%endif%}" ports: - "3536:3000" anonymousoverflow: needs_configs_dir: false needs_data_dir: false docker_settings: services: - name: anonymousoverflow image: ghcr.io/httpjamesm/anonymousoverflow:release ports: - "8694:8080" environment: APP_URL: https://overflow.projectsegfau.lt JWT_SIGNING_SECRET: "{{ anonymousoverflow_signing_secret }}" breezewiki: needs_configs_dir: true needs_data_dir: false docker_settings: services: - name: breezewiki image: quay.io/pussthecatorg/breezewiki:latest ports: - "10416:10416" mounts: - "{{configs_dir}}/breezewiki/config.ini:/app/config.ini" gothub: needs_configs_dir: false needs_data_dir: false docker_settings: services: - name: gothub image: codeberg.org/gothub/gothub:latest environment: DOCKER: true GOTHUB_SETUP_COMPLETE: true GOTHUB_PROXYING_ENABLED: true GOTHUB_IP_LOGGED: false GOTHUB_REQUEST_URL_LOGGED: false GOTHUB_USER_AGENT_LOGGED: false GOTHUB_DIAGNOSTIC_INFO_LOGGED: false GOTHUB_INSTANCE_PRIVACY_POLICY: https://projectsegfau.lt/legal/privacy-policy GOTHUB_INSTANCE_COUNTRY: "{{ country }}" GOTHUB_INSTANCE_PROVIDER: "{{ isp }}" GOTHUB_INSTANCE_CLOUDFLARE: false ports: - "1024:3000" gothub-dev: needs_configs_dir: false needs_data_dir: false docker_settings: services: - name: gothub-dev image: codeberg.org/gothub/gothub:dev environment: DOCKER: true GOTHUB_SETUP_COMPLETE: true GOTHUB_PROXYING_ENABLED: true GOTHUB_IP_LOGGED: false GOTHUB_REQUEST_URL_LOGGED: false GOTHUB_USER_AGENT_LOGGED: false GOTHUB_DIAGNOSTIC_INFO_LOGGED: false GOTHUB_INSTANCE_PRIVACY_POLICY: https://projectsegfau.lt/legal/privacy-policy GOTHUB_INSTANCE_COUNTRY: "{{ country }}" GOTHUB_INSTANCE_PROVIDER: "{{ isp }}" GOTHUB_INSTANCE_CLOUDFLARE: false ports: - "1025:3000" librarian: needs_configs_dir: true needs_data_dir: false docker_settings: services: - name: librarian image: quay.io/pussthecatorg/librarian ports: - "3550:3550" mounts: - "{{configs_dir}}/librarian/config.yml:/app/config.yml" redlib: needs_data_dir: false needs_configs_dir: false docker_settings: services: - name: redlib image: quay.io/redlib/redlib:latest ports: - "6464:8080" environment: FRONT_PAGE: popular COMMENT_SORT: new PUSHSHIFT_FRONTEND: "undelete.pullpush.io" BLUR_NSFW: on USE_HLS: on AUTOPLAY_VIDEOS: off nitter: needs_data_dir: true needs_configs_dir: true docker_settings: services: - name: nitter image: ghcr.io/privacydevel/nitter:master ports: - "8387:8080" mounts: - "{{configs_dir}}/nitter/nitter.conf:/src/nitter.conf:ro" - "{{data_dir}}/nitter/guest_accounts.json:/src/guest_accounts.json:ro" - name: nitter-redis image: redis:6-alpine command: redis-server --save 60 1 --loglevel warning mounts: - "{{data_dir}}/nitter/redis-data:/data" rimgo: needs_configs_dir: false needs_data_dir: false docker_settings: services: - name: rimgo image: codeberg.org/video-prize-ranch/rimgo ports: - "9016:3000" environment: ADDRESS: 0.0.0.0 PORT: 3000 FIBER_PREFORK: false IMGUR_CLIENT_ID: 546c25a59c58ad7 PRIVACY_POLICY: https://projectsegfau.lt/legal/privacy-policy PRIVACY_COUNTRY: "{{country}}" PRIVACY_PROVIDER: "{{isp}}" PRIVACY_CLOUDFLARE: false PRIVACY_NOT_COLLECTED: true safetwitch: needs_data_dir: false needs_configs_dir: false docker_settings: services: - name: safetwitch-frontend image: codeberg.org/safetwitch/safetwitch:latest ports: - "5070:8280" environment: SAFETWITCH_BACKEND_DOMAIN: "api.safetwitch.{{server_prefix}}.projectsegfau.lt" SAFETWITCH_INSTANCE_DOMAIN: safetwitch.projectsegfau.lt SAFETWITCH_HTTPS: true - name: safetwitch-backend image: codeberg.org/safetwitch/safetwitch-backend ports: - "5072:7000" environment: PORT: 7000 URL: "https://api.safetwitch.{{server_prefix}}.projectsegfau.lt" scribe: needs_configs_dir: false needs_data_dir: false docker_settings: services: - name: scribe image: registry.gitlab.com/lomanic/scribe-binaries:latest ports: - "8006:8006" environment: SCRIBE_PORT: 8006 SCRIBE_HOST: 0.0.0.0 APP_DOMAIN: scribe.projectsegfau.lt LUCKY_ENV: production PORT: 8006 SECRET_KEY_BASE: "{{scribe_secret_key_base}}" searxng: needs_configs_dir: true needs_data_dir: true docker_settings: services: - name: searxng image: searxng/searxng:latest ports: - "8081:8080" mounts: - "{{data_dir}}/searxng:/etc/searxng" - "{{configs_dir}}/searxng/settings.yml:/etc/searxng/settings.yml:rw" environment: SEARXNG_BASE_URL: "https://{% if server_prefix == 'eu' %}search.projectsegfau.lt{%else%}search.{{inventory_hostname}}.projectsegfau.lt{%endif%}/" - name: searxng-redis image: redis:alpine command: redis-server --save 30 1 --loglevel warning mounts: - "{{data_dir}}/searxng/redis-data:/data" mozhi: needs_configs_dir: false needs_data_dir: false docker_settings: services: - name: mozhi image: codeberg.org/aryak/mozhi:latest ports: - "5046:3000" environment: MOZHI_LIBRETRANSLATE_ENABLED: false teddit: needs_configs_dir: false needs_data_dir: true docker_settings: services: - name: teddit image: teddit/teddit:latest ports: - "9061:8080" environment: DOMAIN: teddit.projectsegfau.lt USE_HELMET: true TRUST_PROXY: true REDIS_HOST: teddit-redis - name: teddit-redis image: redis:6.2.5-alpine command: redis-server environment: REDIS_REPLICATION_MODE: master mounts: - "{{data_dir}}/teddit/redis-data:/data" priviblur: needs_configs_dir: true needs_data_dir: true docker_settings: services: - name: priviblur image: quay.io/syeopite/priviblur:latest ports: - "9084:8000" mounts: - "{{configs_dir}}/priviblur/config.toml:/priviblur/config.toml:Z,ro" - name: priviblur-redis image: redis:6.2.5-alpine command: redis-server environment: REDIS_REPLICATION_MODE: master mounts: - "{{data_dir}}/priviblur/redis-data:/data" shoelace: needs_configs_dir: true needs_data_dir: true docker_settings: services: - name: shoelace image: nixgoat/shoelace ports: - "9029:8080" mounts: - "{{configs_dir}}/shoelace/shoelace.toml:/data/shoelace.toml" - "{{data_dir}}/shoelace:/data" environment: SHOELACE_CONFIG: /data/shoelace.toml watchtower: needs_configs_dir: false needs_data_dir: false docker_settings: services: - name: watchtower image: containrrr/watchtower mounts: - "/var/run/docker.sock:/var/run/docker.sock" environment: TZ: Europe/Paris WATCHTOWER_CLEANUP: false DOCKER_API_VERSION: 1.42 WATCHTOWER_INCLUDE_STOPPED: false WATCHTOWER_POLL_INTERVAL: 3600 WATCHTOWER_MONITOR_ONLY: false WATCHTOWER_NOTIFICATION_URL: "matrix://{{watchtower_mtrx_username}}:{{watchtower_mtrx_pass}}@matrix.envs.net/"