update readme
This commit is contained in:
parent
092a14fa09
commit
2ad0f98f4a
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,6 +1,7 @@
|
||||
.env
|
||||
.idea
|
||||
.vagrant
|
||||
.vscode
|
||||
Vagrantfile
|
||||
docker-compose.override.yaml
|
||||
docker-compose.prod.yaml
|
||||
|
@ -1,4 +1,4 @@
|
||||
![](https://github.com/thecodingmachine/workadventure/workflows/Continuous%20Integration/badge.svg) [![Discord](https://img.shields.io/discord/821338762134290432?label=Discord)](https://discord.gg/YGtngdh9gt)
|
||||
> # This is a fork of [Work Adventure](https://github.com/thecodingmachine/workadventure) with small adjustment and changes for production environment for Bastelei e. V. Partey
|
||||
|
||||
![WorkAdventure landscape image](README-INTRO.jpg)
|
||||
|
||||
@ -102,5 +102,7 @@ Vagrant destroy
|
||||
|
||||
## Setting up a production environment
|
||||
|
||||
> The production environment of Partey is based on a single-domain deployment with some changed, minimized *Dockerfile*s based on the fork [workadventure-xce](https://github.com/workadventure-xce/workadventure-xce). An example can be found in [contrib/docker/docker-compose.single-domain.prod.yaml](/contrib/docker/docker-compose.single-domain.prod.yaml). To create a non-single-domain based environment, please adopt settings from the below *Work Adventure* provided file yourself. The changed *Dockerfile*s won't work directly with the file below!
|
||||
|
||||
The way you set up your production environment will highly depend on your servers.
|
||||
We provide a production ready `docker-compose` file that you can use as a good starting point in the [contrib/docker](https://github.com/thecodingmachine/workadventure/tree/master/contrib/docker) directory.
|
||||
We provide a production ready `docker-compose` file that you can use as a good starting point in the [contrib/docker](https://github.com/thecodingmachine/workadventure/tree/master/contrib/docker) director
|
89
contrib/docker/docker-compose.single-domain.prod.yaml
Normal file
89
contrib/docker/docker-compose.single-domain.prod.yaml
Normal file
@ -0,0 +1,89 @@
|
||||
version: "3.3"
|
||||
services:
|
||||
reverse-proxy:
|
||||
image: traefik:v2.5
|
||||
command:
|
||||
- --log.level=WARN
|
||||
- --providers.docker
|
||||
- --entryPoints.web.address=:80
|
||||
ports:
|
||||
- "9999:80" # port is used to proxy through apache with ssl
|
||||
depends_on:
|
||||
- pusher
|
||||
- front
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
|
||||
front:
|
||||
build:
|
||||
context: ./
|
||||
dockerfile: front/Dockerfile
|
||||
args:
|
||||
DEBUG_MODE: "$DEBUG_MODE"
|
||||
JITSI_URL: $JITSI_URL
|
||||
JITSI_PRIVATE_MODE: "$JITSI_PRIVATE_MODE"
|
||||
PUSHER_URL: /pusher
|
||||
ADMIN_URL: /admin # this is only set to avoid compiling errors, currently not used otherways
|
||||
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"
|
||||
|
||||
pusher:
|
||||
build:
|
||||
context: ./
|
||||
dockerfile: pusher/Dockerfile
|
||||
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}
|
||||
OPID_CLIENT_ID: ${OPID_CLIENT_ID}
|
||||
OPID_CLIENT_SECRET: ${OPID_CLIENT_SECRET}
|
||||
OPID_CLIENT_ISSUER: ${OPID_CLIENT_ISSUER}
|
||||
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"
|
||||
|
||||
back:
|
||||
build:
|
||||
context: ./
|
||||
dockerfile: back/Dockerfile
|
||||
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"
|
||||
|
||||
redis:
|
||||
image: redis:6
|
Loading…
Reference in New Issue
Block a user