--- default_restart_policy: unless-stopped configs_dir: "/opt/configs-privfrontends" compose_dir: "/opt/docker-privfrontends" data_dir: "/opt/data-privfrontends" apps: groups: 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 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" hyperpipe: needs_configs_dir: false needs_data_dir: false docker_settings: services: - name: frontend image: codeberg.org/hyperpipe/hyperpipe entrypoint: "sh -c 'find /usr/share/nginx/html -type f -exec sed -i s/pipedapi.kavin.rocks/{% if server_prefix == 'eu' %}api.piped.projectsegfau.lt{%else%}pipedapi.{{server_prefix}}.projectsegfau.lt{%endif%}/g {} \; -exec sed -i s/hyperpipeapi.onrender.com/hyperpipebackend.{{ server_prefix }}.projectsegfau.lt/g {} \; && /docker-entrypoint.sh && nginx -g "daemon off;"'" ports: - "8843:80" - name: 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" librarian: needs_configs_dir: true needs_data_dir: false docker_settings: services: - name: librarian image: codeberg.org/librarian/librarian:latest ports: - "3550:3550" mounts: - "{{configs_dir}}/librarian/config.yml:/app/config.yml" - name: stream-proxy image: codeberg.org/librarian/stream-proxy-ng:latest ports: - "3001:3001" redlib: needs_data_dir: false needs_configs_dir: false docker_settings: services: - name: libreddit image: quay.io/redlib/redlib:latest ports: - "6464:8080" environment: FRONT_PAGE: popular COMMENT_SORT: new BLUR_NSFW: on USE_HLS: on AUTOPLAY_VIDEOS: off nitter: needs_data_dir: true needs_configs_dir: true docker_settings: services: - name: nitter image: codeberg.org/aryak/nitter-image:latest ports: - "8387:8080" mounts: - "{{configs_dir}}/nitter/nitter.conf:/src/nitter.conf:ro" - "./guest_accounts.jsonl:/src/guest_accounts.jsonl: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: 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: 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:806" 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: 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: redis image: redis:6.2.5-alpine command: redis-server environment: REDIS_REPLICATION_MODE: master mounts: - "{{data_dir}}/teddit/redis-data:/data" 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/