Skip to content
Snippets Groups Projects
  • nimrod's avatar
    f496744b
    Add a Vouch proxy to all hosts. · f496744b
    nimrod authored
    Vouch uses the Host header for calculating the JWT but we can't override
    that (proxying won't work with an incorrect header). So instead it to
    each deployment so we don't have multiple proxies and can override the
    Host header.
    f496744b
    History
    Add a Vouch proxy to all hosts.
    nimrod authored
    Vouch uses the Host header for calculating the JWT but we can't override
    that (proxying won't work with an incorrect header). So instead it to
    each deployment so we don't have multiple proxies and can override the
    Host header.
docker-compose.yml 1.39 KiB
---
version: '3.5'
services:
  proxy:
    build:
      context: ./
    # command: ["nginx", "-g", "daemon off;"]
    hostname: &hostname shore.co.il
    networks:
      default:
        aliases:
          - *hostname
    ports:
      - '80:80'
      - '443:443'
    restart: always
    volumes:
      - '/var/www/www.shore.co.il/.well-known/acme-challenge:/var/www/www.shore.co.il/.well-known/acme-challenge:ro'
      - '/var/ssl/site.key:/var/ssl/site.key:ro'
      - '/var/ssl/site.crt:/var/ssl/site.crt:ro'
      - '/var/ssl/dhparams:/var/ssl/dhparams:ro'

  vouch:
    environment:
      OAUTH_AUTH_URL: https://nextcloud.shore.co.il/apps/oauth2/authorize
      OAUTH_CALLBACK_URLS: https://vouch.shore.co.il/auth
      OAUTH_CLIENT_ID: "${VOUCH_OAUTH_CLIENT_ID}"
      # yamllint disable-line rule:line-length
      OAUTH_CLIENT_SECRET: "${VOUCH_OAUTH_CLIENT_SECRET}"  # pragma: allowlist secret
      OAUTH_PROVIDER: nextcloud
      OAUTH_SCOPES: 'openid,email.profile'
      OAUTH_TOKEN_URL: https://nextcloud.shore.co.il/apps/oauth2/api/v1/token
      # yamllint disable-line rule:line-length
      OAUTH_USER_INFO_URL: https://nextcloud.shore.co.il/ocs/v2.php/cloud/user?format=json
      VOUCH_DOMAINS: shore.co.il
      VOUCH_JWT_SECRET: "${VOUCH_JWT_SECRET}"  # pragma: allowlist secret
    image: registry.hub.docker.com/voucher/vouch-proxy:alpine-0.20.1
    restart: always

networks:
  default:
    name: shore