main
greglebreton 2 years ago
parent 9331f241c9
commit ea101e991e
  1. 75
      .env
  2. 12
      nginx-proxy-manager/docker-compose.yml
  3. 39
      workadventure/.env
  4. 89
      workadventure/docker-compose.yml

75
.env

@ -0,0 +1,75 @@
# The base domain
DOMAIN=adventure.nom-domain.tld
DEBUG_MODE=false
# JITSI_URL=meet.jit.si
JITSI_URL=jitsi.nom-domain.tld
# If your Jitsi environment has authentication set up, you MUST set JITSI_PRIVATE_MODE to "true" and you MUST pass a SECRET_JITSI_KEY to generate the JWT secret
JITSI_PRIVATE_MODE=false
JITSI_ISS=
SECRET_JITSI_KEY=
# URL of the TURN server (needed to "punch a hole" through some networks for P2P connections)
#TURN_SERVER=turn:numb.viagenie.ca
#TURN_USER=webrtc@live.com
#TURN_PASSWORD=muazkh
DATA_DIR=./wa
TURN_SERVER=turn:turn.adventure.nom-de-domaine.tld:3478?transport=tcp
TURN_USER=workadventure
TURN_PASSWORD=workadventure123
# The URL used by default, in the form: "/_/global/map/url.json"
START_ROOM_URL=/_/global/thecodingmachine.github.io/workadventure-map-starter-kit/map.json
# The email address used by Let's encrypt to send renewal warnings (compulsory)
ACME_EMAIL=email@nom-domain.tld
# Set to true to allow using this instance as a target for the apiUrl property
FEDERATE_PUSHER=false
# Server settings
MAX_PER_GROUP=4
MAX_USERNAME_LENGTH=25
DISABLE_NOTIFICATIONS=false
SKIP_RENDER_OPTIMIZATIONS=false
# Secrets
SECRET_KEY="some-long-string-of-letters-and-numbers"
ADMIN_API_TOKEN="some-other-long-string-of-letters-and-numbers"
ADMIN_API_URL=
# CONTAINERS ADRESSES
FRONT_URL=play.adventure.nom-domain.tld
PUSHER_HOST=pusher.adventure.nom-domain.tld
BACK_HOST=api.adventure.nom-domain.tld
UPLOADER_HOST=uploader.adventure.nom-domain.tld
CHAT_URL=chat.adventure.nom-domain.tld
CHAT_HOST=chat.adventure.nom-domain.tld
ICON_HOST=icon.adventure.nom-domain.tld
MAP_HOST=map.adventure.nom-domain.tld
# OIDC
ENABLE_OPENID=true
OPID_CLIENT_ID=adventure
OPID_CLIENT_SECRET=<keycloak-secret>
OPID_CLIENT_ISSUER=https://keycloak.nom-domain.tld/auth/realms/<realm>/.well-known/openid-configuration
OPID_CLIENT_REDIRECT_URL=https://pusher.adventure.nom-domain.tld/openid-callback
OPID_PROFILE_SCREEN_PROVIDER=http://pusher.adventure.nom-domain.tld/login-screen
DISABLE_ANONYMOUS=true
OPID_USERNAME_CLAIM=preferred_username
# chat
ENABLE_CHAT=true
ENABLE_CHAT_UPLOAD=true
UPLOAD_MAX_FILESIZE=10485760
# redis
#UPLOADER_REDIS_HOST=
#UPLOADER_REDIS_PORT=
UPLOADER_REDIS_DB_NUMBER=0
# ejabberd
#EJABBERD_DOMAIN=ejabberd
#EJABBERD_WS_URI=ws://ejabberd:5443/ws
#EJABBERD_API_URI=https://ejabberd:5443/api

@ -1,12 +0,0 @@
version: '3'
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '81:81'
- '443:443'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt

@ -1,39 +0,0 @@
# The base domain
DOMAIN=votre-nom-de-domaine.com
DEBUG_MODE=false
JITSI_URL=meet.jit.si
# Domain redirections
FRONT_URL=play.votre-nom-de-domaine.com
PUSHER_HOST=pusher.votre-nom-de-domaine.com
BACK_HOST=api.votre-nom-de-domaine.com
# If your Jitsi environment has authentication set up, you MUST set JITSI_PRIVATE_MODE to>
JITSI_PRIVATE_MODE=false
JITSI_ISS=
SECRET_JITSI_KEY=
# URL of the TURN server (needed to "punch a hole" through some networks for P2P connecti>
#TURN_SERVER=
#TURN_USER=
#TURN_PASSWORD=
# The URL used by default, in the form: "/_/global/map/url.json"
START_ROOM_URL=/_/global/GregLebreton.github.io/adventure-map/map.json
# The email address used by Let's encrypt to send renewal warnings (compulsory)
ACME_EMAIL=
# Set to true to allow using this instance as a target for the apiUrl property
FEDERATE_PUSHER=false
# Server settings
MAX_PER_GROUP=100
MAX_USERNAME_LENGTH=25
DISABLE_NOTIFICATIONS=false
SKIP_RENDER_OPTIMIZATIONS=false
# Secrets
SECRET_KEY=
ADMIN_API_TOKEN=
ADMIN_API_URL=

@ -1,89 +0,0 @@
version: "3.3"
services:
reverse-proxy:
image: traefik:v2.5
command:
- --log.level=WARN
- --providers.docker
- --entryPoints.web.address=:80
ports:
- "9999:80"
depends_on:
- pusher
- front
volumes:
- /var/run/docker.sock:/var/run/docker.sock
restart: unless-stopped
front:
image: thecodingmachine/workadventure-front:master
environment:
DEBUG_MODE: "$DEBUG_MODE"
JITSI_URL: $JITSI_URL
JITSI_PRIVATE_MODE: "$JITSI_PRIVATE_MODE"
PUSHER_URL: /pusher
ADMIN_URL: /admin
TURN_SERVER: "${TURN_SERVER}"
TURN_USER: "${TURN_USER}"
TURN_PASSWORD: "${TURN_PASSWORD}"
MAX_PER_GROUP: "${MAX_PER_GROUP}"
MAX_USERNAME_LENGTH: "${MAX_USERNAME_LENGTH}"
START_ROOM_URL: "${START_ROOM_URL}"
DISABLE_NOTIFICATIONS: "${DISABLE_NOTIFICATIONS}"
SKIP_RENDER_OPTIMIZATIONS: "${SKIP_RENDER_OPTIMIZATIONS}"
labels:
- "traefik.http.routers.front.rule=PathPrefix(`/`)"
- "traefik.http.routers.front.entryPoints=web"
- "traefik.http.services.front.loadbalancer.server.port=80"
- "traefik.http.routers.front.service=front"
restart: unless-stopped
pusher:
image: thecodingmachine/workadventure-pusher:master
environment:
SECRET_JITSI_KEY: "${SECRET_JITSI_KEY}"
SECRET_KEY: ${SECRET_KEY}
API_URL: back:50051
ADMIN_API_URL: "${ADMIN_API_URL}"
ADMIN_API_TOKEN: "${ADMIN_API_TOKEN}"
JITSI_URL: ${JITSI_URL}
JITSI_ISS: ${JITSI_ISS}
FRONT_URL : ${FRONT_URL}
labels:
- "traefik.http.middlewares.strip-pusher-prefix.stripprefix.prefixes=/pusher"
- "traefik.http.routers.pusher.rule=PathPrefix(`/pusher`)"
- "traefik.http.routers.pusher.middlewares=strip-pusher-prefix@docker"
- "traefik.http.routers.pusher.entryPoints=web"
- "traefik.http.services.pusher.loadbalancer.server.port=8080"
- "traefik.http.routers.pusher.service=pusher"
restart: unless-stopped
back:
image: thecodingmachine/workadventure-back:master
environment:
SECRET_KEY: ${SECRET_KEY}
STARTUP_COMMAND_1: yarn install
SECRET_JITSI_KEY: "${SECRET_JITSI_KEY}"
ADMIN_API_TOKEN: "${ADMIN_API_TOKEN}"
ADMIN_API_URL: "${ADMIN_API_URL}"
JITSI_URL: ${JITSI_URL}
JITSI_ISS: ${JITSI_ISS}
MAX_PER_GROUP: ${MAX_PER_GROUP}
TURN_STATIC_AUTH_SECRET: "${TURN_STATIC_AUTH_SECRET}"
REDIS_HOST: redis
labels:
- "traefik.http.middlewares.strip-api-prefix.stripprefix.prefixes=/api"
- "traefik.http.routers.back.rule=PathPrefix(`/api`)"
- "traefik.http.routers.back.middlewares=strip-api-prefix@docker"
- "traefik.http.routers.back.entryPoints=web"
- "traefik.http.services.back.loadbalancer.server.port=8080"
- "traefik.http.routers.back.service=back"
restart: unless-stopped
redis:
image: redis:6
restart: unless-stopped
Loading…
Cancel
Save