infra:workadventure:start

Workadventure

Eine Anleitung zum Erstellen von Maps ist hier zu finden.

Unsere aktuell laufende Version mit allen möglichen Patches ist hier zu finden: https://git.binary-kitchen.de/noby/workadventure Der Source liegt unter /opt/workadventure/source Es gibt einen User „workadventure“ dessen Home-Directory /opt/workadventure ist.

Außerdem läuft ein Nginx Webserver. Die Config workadventure Datei ist hier zu sehen:

server {
        listen 80;
        listen [::]:80;
 
        server_name wa.binary-kitchen.de play.wa.binary-kitchen.de pusher.wa.binary-kitchen.de uploader.wa.binary-kitchen.de;
 
        location /.well-known/acme-challenge {
                default_type "text/plain";
                alias /var/www/acme-challenge;
        }
 
        location / {
                return 301 https://$host$request_uri;
        }
}
 
server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
 
        server_name wa.binary-kitchen.de;
 
        ssl_certificate_key /etc/nginx/ssl/wa.binary-kitchen.de.key;
        ssl_certificate /etc/nginx/ssl/wa.binary-kitchen.de.crt;
 
        location / {
                #return 302 https://play.wa.binary-kitchen.de/_/global/raw.githubusercontent.com/Binary-Kitchen/rc3.world/master/main.json;
                root /opt/workadventure/source/landing/dist;
        }
}
 
server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
 
        server_name play.wa.binary-kitchen.de;
 
        ssl_certificate_key /etc/nginx/ssl/wa.binary-kitchen.de.key;
        ssl_certificate /etc/nginx/ssl/wa.binary-kitchen.de.crt;
 
        location / {
                root /opt/workadventure/source/front/dist;
                try_files $uri uri/ /index.html?$args;
        }
}
 
server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
 
        server_name pusher.wa.binary-kitchen.de;
 
        ssl_certificate_key /etc/nginx/ssl/wa.binary-kitchen.de.key;
        ssl_certificate /etc/nginx/ssl/wa.binary-kitchen.de.crt;
 
        location / {
                proxy_pass http://localhost:8002;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "Upgrade";
                proxy_set_header Host $host;
        }
}
 
server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
 
        server_name uploader.wa.binary-kitchen.de;
 
        ssl_certificate_key /etc/nginx/ssl/wa.binary-kitchen.de.key;
        ssl_certificate /etc/nginx/ssl/wa.binary-kitchen.de.crt;
 
        location / {
                proxy_pass http://localhost:8005;
        }
}

Hier kann entweder direkt ein Zertifikat angegeben werden oder einfach eines via Letsencrypt bezogen werden.

Die .env Datei (muss angepasst werden) liegt im source Verzeichnis:

DEBUG_MODE=false
DOMAIN=wa.binary-kitchen.de
JITSI_URL=<<<<insert jitsi server here>>>>
# 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=
ADMIN_API_TOKEN=123
START_ROOM_URL=/_/global/raw.githubusercontent.com/Binary-Kitchen/rc3.world/master/main.json
# If your Turn server is configured to use the Turn REST API, you should put the shared auth secret here.
# If you are using Coturn, this is the value of the "static-auth-secret" parameter in your coturn config file.
# Keep empty if you are sharing hard coded / clear text credentials.
TURN_STATIC_AUTH_SECRET=
DISABLE_NOTIFICATIONS=false
SKIP_RENDER_OPTIMIZATIONS=true
 
# The email address used by Let's encrypt to send renewal warnings (compulsory)
ACME_EMAIL=
MAX_PER_GROUP=4
MAX_USERNAME_LENGTH=8
 
# Set to true to allow using this instance as a target for the apiUrl property
FEDERATE_PUSHER=true

Gestartet wird den Server aktuell von Hand ohne Systemd Script (nicht schön aber tut)

$ su – workadventure
$ docker-compose -f docker-compose.bk.yml up –d

Zusätzlich zu dem workadventure Server benötigt man aber ggf. auch noch eine Jitsi Instanz wenn man mit mehr als 4 Personen gleichzeitig sprechen will (Diese wird bei uns z.B. bei den Tischen geöffnet)

  • infra/workadventure/start.txt
  • Zuletzt geändert: 2021/05/28 19:53
  • von noby