Add generated manifests for workadventure
Created with: kompose convert
This commit is contained in:
parent
32968c8f34
commit
2c9120944f
24 changed files with 1269 additions and 0 deletions
14
apps/workadventure/back-claim0-persistentvolumeclaim.yaml
Normal file
14
apps/workadventure/back-claim0-persistentvolumeclaim.yaml
Normal file
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: back-claim0
|
||||
name: back-claim0
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
83
apps/workadventure/back-deployment.yaml
Normal file
83
apps/workadventure/back-deployment.yaml
Normal file
|
@ -0,0 +1,83 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.back-ssl.entryPoints: websecure
|
||||
traefik.http.routers.back-ssl.rule: Host(`api.workadventure.localhost`)
|
||||
traefik.http.routers.back-ssl.service: back
|
||||
traefik.http.routers.back-ssl.tls: "true"
|
||||
traefik.http.routers.back.entryPoints: web
|
||||
traefik.http.routers.back.rule: Host(`api.workadventure.localhost`)
|
||||
traefik.http.services.back.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: back
|
||||
name: back
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: back
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.back-ssl.entryPoints: websecure
|
||||
traefik.http.routers.back-ssl.rule: Host(`api.workadventure.localhost`)
|
||||
traefik.http.routers.back-ssl.service: back
|
||||
traefik.http.routers.back-ssl.tls: "true"
|
||||
traefik.http.routers.back.entryPoints: web
|
||||
traefik.http.routers.back.rule: Host(`api.workadventure.localhost`)
|
||||
traefik.http.services.back.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: back
|
||||
spec:
|
||||
containers:
|
||||
- args:
|
||||
- yarn
|
||||
- dev
|
||||
env:
|
||||
- name: ADMIN_API_TOKEN
|
||||
- name: ALLOW_ARTILLERY
|
||||
value: "true"
|
||||
- name: DEBUG
|
||||
value: '*'
|
||||
- name: JITSI_ISS
|
||||
- name: JITSI_URL
|
||||
- name: MAX_PER_GROUP
|
||||
value: MAX_PER_GROUP
|
||||
- name: NODE_ENV
|
||||
value: development
|
||||
- name: REDIS_HOST
|
||||
value: redis
|
||||
- name: SECRET_JITSI_KEY
|
||||
- name: SECRET_KEY
|
||||
value: yourSecretKey
|
||||
- name: STARTUP_COMMAND_1
|
||||
value: yarn install
|
||||
- name: STARTUP_COMMAND_2
|
||||
value: while [ ! -f /usr/src/app/src/Messages/generated/messages_pb.js ]; do sleep 1; done
|
||||
- name: STORE_VARIABLES_FOR_LOCAL_MAPS
|
||||
value: "true"
|
||||
- name: TURN_STATIC_AUTH_SECRET
|
||||
value: SomeStaticAuthSecret
|
||||
image: thecodingmachine/nodejs:12
|
||||
name: back
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /usr/src/app
|
||||
name: back-claim0
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: back-claim0
|
||||
persistentVolumeClaim:
|
||||
claimName: back-claim0
|
||||
status: {}
|
14
apps/workadventure/default-networkpolicy.yaml
Normal file
14
apps/workadventure/default-networkpolicy.yaml
Normal file
|
@ -0,0 +1,14 @@
|
|||
apiVersion: networking.k8s.io/v1
|
||||
kind: NetworkPolicy
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: default
|
||||
spec:
|
||||
ingress:
|
||||
- from:
|
||||
- podSelector:
|
||||
matchLabels:
|
||||
io.kompose.network/default: "true"
|
||||
podSelector:
|
||||
matchLabels:
|
||||
io.kompose.network/default: "true"
|
227
apps/workadventure/docker-compose.single-domain.yaml
Normal file
227
apps/workadventure/docker-compose.single-domain.yaml
Normal file
|
@ -0,0 +1,227 @@
|
|||
version: "3"
|
||||
services:
|
||||
reverse-proxy:
|
||||
image: traefik:v2.0
|
||||
command:
|
||||
- --api.insecure=true
|
||||
- --providers.docker
|
||||
- --entryPoints.web.address=:80
|
||||
- --entryPoints.websecure.address=:443
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
# The Web UI (enabled by --api.insecure=true)
|
||||
- "8080:8080"
|
||||
depends_on:
|
||||
- back
|
||||
- front
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
|
||||
front:
|
||||
image: thecodingmachine/nodejs:14
|
||||
environment:
|
||||
DEBUG_MODE: "$DEBUG_MODE"
|
||||
JITSI_URL: $JITSI_URL
|
||||
JITSI_PRIVATE_MODE: "$JITSI_PRIVATE_MODE"
|
||||
HOST: "0.0.0.0"
|
||||
NODE_ENV: development
|
||||
PUSHER_URL: /pusher
|
||||
UPLOADER_URL: /uploader
|
||||
#ADMIN_URL: /admin
|
||||
MAPS_URL: /maps
|
||||
ICON_URL: /icon
|
||||
STARTUP_COMMAND_1: ./templater.sh
|
||||
STARTUP_COMMAND_2: yarn install
|
||||
TURN_SERVER: "turn:localhost:3478,turns:localhost:5349"
|
||||
DISABLE_NOTIFICATIONS: "$DISABLE_NOTIFICATIONS"
|
||||
SKIP_RENDER_OPTIMIZATIONS: "$SKIP_RENDER_OPTIMIZATIONS"
|
||||
# Use TURN_USER/TURN_PASSWORD if your Coturn server is secured via hard coded credentials.
|
||||
# Advice: you should instead use Coturn REST API along the TURN_STATIC_AUTH_SECRET in the Back container
|
||||
TURN_USER: ""
|
||||
TURN_PASSWORD: ""
|
||||
START_ROOM_URL: "$START_ROOM_URL"
|
||||
DISABLE_ANONYMOUS: "$DISABLE_ANONYMOUS"
|
||||
command: yarn run start
|
||||
volumes:
|
||||
- ./front:/usr/src/app
|
||||
labels:
|
||||
- "traefik.http.routers.front.rule=PathPrefix(`/`)"
|
||||
- "traefik.http.routers.front.entryPoints=web,traefik"
|
||||
- "traefik.http.services.front.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.front-ssl.rule=PathPrefix(`/`)"
|
||||
- "traefik.http.routers.front-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.front-ssl.tls=true"
|
||||
- "traefik.http.routers.front-ssl.service=front"
|
||||
|
||||
pusher:
|
||||
image: thecodingmachine/nodejs:14
|
||||
command: yarn dev
|
||||
#command: yarn run prod
|
||||
#command: yarn run profile
|
||||
environment:
|
||||
DEBUG: "*"
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
# wait for files generated by "messages" container to exists
|
||||
STARTUP_COMMAND_2: while [ ! -f /usr/src/app/src/Messages/generated/messages_pb.js ]; do sleep 1; done
|
||||
SECRET_JITSI_KEY: "$SECRET_JITSI_KEY"
|
||||
SECRET_KEY: yourSecretKey
|
||||
ADMIN_API_TOKEN: "$ADMIN_API_TOKEN"
|
||||
API_URL: back:50051
|
||||
JITSI_URL: $JITSI_URL
|
||||
JITSI_ISS: $JITSI_ISS
|
||||
FRONT_URL: http://localhost
|
||||
OPID_CLIENT_ID: $OPID_CLIENT_ID
|
||||
OPID_CLIENT_SECRET: $OPID_CLIENT_SECRET
|
||||
OPID_CLIENT_ISSUER: $OPID_CLIENT_ISSUER
|
||||
OPID_CLIENT_REDIRECT_URL: $OPID_CLIENT_REDIRECT_URL
|
||||
OPID_PROFILE_SCREEN_PROVIDER: $OPID_PROFILE_SCREEN_PROVIDER
|
||||
DISABLE_ANONYMOUS: $DISABLE_ANONYMOUS
|
||||
volumes:
|
||||
- ./pusher:/usr/src/app
|
||||
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-ssl.rule=PathPrefix(`/pusher`)"
|
||||
- "traefik.http.routers.pusher-ssl.middlewares=strip-pusher-prefix@docker"
|
||||
- "traefik.http.routers.pusher-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.pusher-ssl.tls=true"
|
||||
- "traefik.http.routers.pusher-ssl.service=pusher"
|
||||
|
||||
maps:
|
||||
image: thecodingmachine/php:8.1-v4-apache-node12
|
||||
environment:
|
||||
DEBUG_MODE: "$DEBUG_MODE"
|
||||
HOST: "0.0.0.0"
|
||||
NODE_ENV: development
|
||||
FRONT_URL: http://play.workadventure.localhost
|
||||
#APACHE_DOCUMENT_ROOT: dist/
|
||||
#APACHE_EXTENSIONS: headers
|
||||
#APACHE_EXTENSION_HEADERS: 1
|
||||
STARTUP_COMMAND_0: sudo a2enmod headers
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
STARTUP_COMMAND_2: yarn run dev &
|
||||
volumes:
|
||||
- ./maps:/var/www/html
|
||||
labels:
|
||||
- "traefik.http.middlewares.strip-maps-prefix.stripprefix.prefixes=/maps"
|
||||
- "traefik.http.routers.maps.rule=PathPrefix(`/maps`)"
|
||||
- "traefik.http.routers.maps.middlewares=strip-maps-prefix@docker"
|
||||
- "traefik.http.routers.maps.entryPoints=web,traefik"
|
||||
- "traefik.http.services.maps.loadbalancer.server.port=80"
|
||||
- "traefik.http.routers.maps-ssl.rule=PathPrefix(`/maps`)"
|
||||
- "traefik.http.routers.maps-ssl.middlewares=strip-maps-prefix@docker"
|
||||
- "traefik.http.routers.maps-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.maps-ssl.tls=true"
|
||||
- "traefik.http.routers.maps-ssl.service=maps"
|
||||
|
||||
back:
|
||||
image: thecodingmachine/nodejs:12
|
||||
command: yarn dev
|
||||
#command: yarn run profile
|
||||
environment:
|
||||
DEBUG: "*"
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
# wait for files generated by "messages" container to exists
|
||||
STARTUP_COMMAND_2: while [ ! -f /usr/src/app/src/Messages/generated/messages_pb.js ]; do sleep 1; done
|
||||
SECRET_KEY: yourSecretKey
|
||||
SECRET_JITSI_KEY: "$SECRET_JITSI_KEY"
|
||||
ALLOW_ARTILLERY: "true"
|
||||
ADMIN_API_TOKEN: "$ADMIN_API_TOKEN"
|
||||
JITSI_URL: $JITSI_URL
|
||||
JITSI_ISS: $JITSI_ISS
|
||||
MAX_PER_GROUP: "$MAX_PER_GROUP"
|
||||
REDIS_HOST: redis
|
||||
NODE_ENV: development
|
||||
volumes:
|
||||
- ./back:/usr/src/app
|
||||
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-ssl.rule=PathPrefix(`/api`)"
|
||||
- "traefik.http.routers.back-ssl.middlewares=strip-api-prefix@docker"
|
||||
- "traefik.http.routers.back-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.back-ssl.tls=true"
|
||||
- "traefik.http.routers.back-ssl.service=back"
|
||||
|
||||
uploader:
|
||||
image: thecodingmachine/nodejs:12
|
||||
command: yarn dev
|
||||
#command: yarn run profile
|
||||
environment:
|
||||
DEBUG: "*"
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
volumes:
|
||||
- ./uploader:/usr/src/app
|
||||
labels:
|
||||
- "traefik.http.middlewares.strip-uploader-prefix.stripprefix.prefixes=/uploader"
|
||||
- "traefik.http.routers.uploader.rule=PathPrefix(`/uploader`)"
|
||||
- "traefik.http.routers.uploader.middlewares=strip-uploader-prefix@docker"
|
||||
- "traefik.http.routers.uploader.entryPoints=web"
|
||||
- "traefik.http.services.uploader.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.uploader-ssl.rule=PathPrefix(`/uploader`)"
|
||||
- "traefik.http.routers.uploader-ssl.middlewares=strip-uploader-prefix@docker"
|
||||
- "traefik.http.routers.uploader-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.uploader-ssl.tls=true"
|
||||
- "traefik.http.routers.uploader-ssl.service=uploader"
|
||||
|
||||
messages:
|
||||
#image: thecodingmachine/nodejs:14
|
||||
image: thecodingmachine/workadventure-back-base:latest
|
||||
environment:
|
||||
#STARTUP_COMMAND_0: sudo apt-get install -y inotify-tools
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
STARTUP_COMMAND_2: yarn run proto:watch
|
||||
volumes:
|
||||
- ./messages:/usr/src/app
|
||||
- ./back:/usr/src/back
|
||||
- ./front:/usr/src/front
|
||||
- ./pusher:/usr/src/pusher
|
||||
|
||||
redis:
|
||||
image: redis:6
|
||||
|
||||
icon:
|
||||
image: matthiasluedtke/iconserver:v3.13.0
|
||||
labels:
|
||||
- "traefik.http.middlewares.strip-icon-prefix.stripprefix.prefixes=/icon"
|
||||
- "traefik.http.routers.icon.rule=PathPrefix(`/icon`)"
|
||||
- "traefik.http.routers.icon.middlewares=strip-icon-prefix@docker"
|
||||
- "traefik.http.routers.icon.entryPoints=web"
|
||||
- "traefik.http.services.icon.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.icon-ssl.rule=PathPrefix(`/icon`)"
|
||||
- "traefik.http.routers.icon-ssl.middlewares=strip-icon-prefix@docker"
|
||||
- "traefik.http.routers.icon-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.icon-ssl.tls=true"
|
||||
- "traefik.http.routers.icon-ssl.service=icon"
|
||||
|
||||
# coturn:
|
||||
# image: coturn/coturn:4.5.2
|
||||
# command:
|
||||
# - turnserver
|
||||
# #- -c=/etc/coturn/turnserver.conf
|
||||
# - --log-file=stdout
|
||||
# - --external-ip=$$(detect-external-ip)
|
||||
# - --listening-port=3478
|
||||
# - --min-port=10000
|
||||
# - --max-port=10010
|
||||
# - --tls-listening-port=5349
|
||||
# - --listening-ip=0.0.0.0
|
||||
# - --realm=localhost
|
||||
# - --server-name=localhost
|
||||
# - --lt-cred-mech
|
||||
# # Enable Coturn "REST API" to validate temporary passwords.
|
||||
# #- --use-auth-secret
|
||||
# #- --static-auth-secret=SomeStaticAuthSecret
|
||||
# #- --userdb=/var/lib/turn/turndb
|
||||
# - --user=workadventure:WorkAdventure123
|
||||
# # use real-valid certificate/privatekey files
|
||||
# #- --cert=/root/letsencrypt/fullchain.pem
|
||||
# #- --pkey=/root/letsencrypt/privkey.pem
|
||||
# network_mode: host
|
241
apps/workadventure/docker-compose.yaml
Normal file
241
apps/workadventure/docker-compose.yaml
Normal file
|
@ -0,0 +1,241 @@
|
|||
version: "3.5"
|
||||
services:
|
||||
reverse-proxy:
|
||||
image: traefik:v2.5
|
||||
command:
|
||||
- --api.insecure=true
|
||||
- --providers.docker
|
||||
- --entryPoints.web.address=:80
|
||||
- --entryPoints.websecure.address=:443
|
||||
- "--providers.docker.exposedbydefault=false"
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
# The Web UI (enabled by --api.insecure=true)
|
||||
- "8080:8080"
|
||||
#depends_on:
|
||||
# - back
|
||||
# - front
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
networks:
|
||||
default:
|
||||
aliases:
|
||||
- 'play.workadventure.localhost'
|
||||
- 'pusher.workadventure.localhost'
|
||||
- 'maps.workadventure.localhost'
|
||||
|
||||
front:
|
||||
image: thecodingmachine/nodejs:14
|
||||
environment:
|
||||
DEBUG_MODE: "$DEBUG_MODE"
|
||||
JITSI_URL: $JITSI_URL
|
||||
JITSI_PRIVATE_MODE: "$JITSI_PRIVATE_MODE"
|
||||
HOST: "0.0.0.0"
|
||||
NODE_ENV: development
|
||||
PUSHER_URL: //pusher.workadventure.localhost
|
||||
UPLOADER_URL: //uploader.workadventure.localhost
|
||||
#ADMIN_URL: //workadventure.localhost
|
||||
ICON_URL: //icon.workadventure.localhost
|
||||
STARTUP_COMMAND_1: ./templater.sh
|
||||
STARTUP_COMMAND_2: yarn install
|
||||
STUN_SERVER: "stun:stun.l.google.com:19302"
|
||||
TURN_SERVER: "turn:coturn.workadventure.localhost:3478,turns:coturn.workadventure.localhost:5349"
|
||||
DISABLE_NOTIFICATIONS: "$DISABLE_NOTIFICATIONS"
|
||||
SKIP_RENDER_OPTIMIZATIONS: "$SKIP_RENDER_OPTIMIZATIONS"
|
||||
# Use TURN_USER/TURN_PASSWORD if your Coturn server is secured via hard coded credentials.
|
||||
# Advice: you should instead use Coturn REST API along the TURN_STATIC_AUTH_SECRET in the Back container
|
||||
TURN_USER: ""
|
||||
TURN_PASSWORD: ""
|
||||
START_ROOM_URL: "$START_ROOM_URL"
|
||||
MAX_PER_GROUP: "$MAX_PER_GROUP"
|
||||
MAX_USERNAME_LENGTH: "$MAX_USERNAME_LENGTH"
|
||||
DISABLE_ANONYMOUS: "$DISABLE_ANONYMOUS"
|
||||
OPID_LOGIN_SCREEN_PROVIDER: "$OPID_LOGIN_SCREEN_PROVIDER"
|
||||
LIVE_RELOAD: "$LIVE_RELOAD:-true"
|
||||
command: yarn run start
|
||||
volumes:
|
||||
- ./front:/usr/src/app
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.front.rule=Host(`play.workadventure.localhost`)"
|
||||
- "traefik.http.routers.front.entryPoints=web"
|
||||
- "traefik.http.services.front.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.front-ssl.rule=Host(`play.workadventure.localhost`)"
|
||||
- "traefik.http.routers.front-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.front-ssl.tls=true"
|
||||
- "traefik.http.routers.front-ssl.service=front"
|
||||
|
||||
pusher:
|
||||
image: thecodingmachine/nodejs:14
|
||||
command: yarn dev
|
||||
environment:
|
||||
DEBUG: "socket:*"
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
# wait for files generated by "messages" container to exists
|
||||
STARTUP_COMMAND_2: while [ ! -f /usr/src/app/src/Messages/generated/messages_pb.js ]; do sleep 1; done
|
||||
SECRET_JITSI_KEY: "$SECRET_JITSI_KEY"
|
||||
SECRET_KEY: yourSecretKey
|
||||
ADMIN_API_TOKEN: "$ADMIN_API_TOKEN"
|
||||
API_URL: back:50051
|
||||
JITSI_URL: $JITSI_URL
|
||||
JITSI_ISS: $JITSI_ISS
|
||||
FRONT_URL: http://play.workadventure.localhost
|
||||
OPID_CLIENT_ID: $OPID_CLIENT_ID
|
||||
OPID_CLIENT_SECRET: $OPID_CLIENT_SECRET
|
||||
OPID_CLIENT_ISSUER: $OPID_CLIENT_ISSUER
|
||||
OPID_CLIENT_REDIRECT_URL: $OPID_CLIENT_REDIRECT_URL
|
||||
OPID_PROFILE_SCREEN_PROVIDER: $OPID_PROFILE_SCREEN_PROVIDER
|
||||
DISABLE_ANONYMOUS: $DISABLE_ANONYMOUS
|
||||
volumes:
|
||||
- ./pusher:/usr/src/app
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.pusher.rule=Host(`pusher.workadventure.localhost`)"
|
||||
- "traefik.http.routers.pusher.entryPoints=web"
|
||||
- "traefik.http.services.pusher.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.pusher-ssl.rule=Host(`pusher.workadventure.localhost`)"
|
||||
- "traefik.http.routers.pusher-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.pusher-ssl.tls=true"
|
||||
- "traefik.http.routers.pusher-ssl.service=pusher"
|
||||
|
||||
maps:
|
||||
image: thecodingmachine/php:8.1-v4-apache-node12
|
||||
environment:
|
||||
DEBUG_MODE: "$DEBUG_MODE"
|
||||
HOST: "0.0.0.0"
|
||||
NODE_ENV: development
|
||||
FRONT_URL: http://play.workadventure.localhost
|
||||
#APACHE_DOCUMENT_ROOT: dist/
|
||||
#APACHE_EXTENSIONS: headers
|
||||
#APACHE_EXTENSION_HEADERS: 1
|
||||
STARTUP_COMMAND_0: sudo a2enmod headers
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
STARTUP_COMMAND_2: yarn run dev &
|
||||
volumes:
|
||||
- ./maps:/var/www/html
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.maps.rule=Host(`maps.workadventure.localhost`)"
|
||||
- "traefik.http.routers.maps.entryPoints=web,traefik"
|
||||
- "traefik.http.services.maps.loadbalancer.server.port=80"
|
||||
- "traefik.http.routers.maps-ssl.rule=Host(`maps.workadventure.localhost`)"
|
||||
- "traefik.http.routers.maps-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.maps-ssl.tls=true"
|
||||
- "traefik.http.routers.maps-ssl.service=maps"
|
||||
|
||||
back:
|
||||
image: thecodingmachine/nodejs:12
|
||||
command: yarn dev
|
||||
#command: yarn run profile
|
||||
environment:
|
||||
DEBUG: "*"
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
# wait for files generated by "messages" container to exists
|
||||
STARTUP_COMMAND_2: while [ ! -f /usr/src/app/src/Messages/generated/messages_pb.js ]; do sleep 1; done
|
||||
SECRET_KEY: yourSecretKey
|
||||
SECRET_JITSI_KEY: "$SECRET_JITSI_KEY"
|
||||
ALLOW_ARTILLERY: "true"
|
||||
ADMIN_API_TOKEN: "$ADMIN_API_TOKEN"
|
||||
JITSI_URL: $JITSI_URL
|
||||
JITSI_ISS: $JITSI_ISS
|
||||
TURN_STATIC_AUTH_SECRET: SomeStaticAuthSecret
|
||||
MAX_PER_GROUP: "MAX_PER_GROUP"
|
||||
REDIS_HOST: redis
|
||||
NODE_ENV: development
|
||||
STORE_VARIABLES_FOR_LOCAL_MAPS: "true"
|
||||
volumes:
|
||||
- ./back:/usr/src/app
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.back.rule=Host(`api.workadventure.localhost`)"
|
||||
- "traefik.http.routers.back.entryPoints=web"
|
||||
- "traefik.http.services.back.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.back-ssl.rule=Host(`api.workadventure.localhost`)"
|
||||
- "traefik.http.routers.back-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.back-ssl.tls=true"
|
||||
- "traefik.http.routers.back-ssl.service=back"
|
||||
|
||||
uploader:
|
||||
image: thecodingmachine/nodejs:12
|
||||
command: yarn dev
|
||||
#command: yarn run profile
|
||||
environment:
|
||||
DEBUG: "*"
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
volumes:
|
||||
- ./uploader:/usr/src/app
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.uploader.rule=Host(`uploader.workadventure.localhost`)"
|
||||
- "traefik.http.routers.uploader.entryPoints=web"
|
||||
- "traefik.http.services.uploader.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.uploader-ssl.rule=Host(`uploader.workadventure.localhost`)"
|
||||
- "traefik.http.routers.uploader-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.uploader-ssl.tls=true"
|
||||
- "traefik.http.routers.uploader-ssl.service=uploader"
|
||||
|
||||
messages:
|
||||
#image: thecodingmachine/nodejs:14
|
||||
image: thecodingmachine/workadventure-back-base:latest
|
||||
environment:
|
||||
#STARTUP_COMMAND_0: sudo apt-get install -y inotify-tools
|
||||
STARTUP_COMMAND_1: yarn install
|
||||
STARTUP_COMMAND_2: yarn run proto:watch
|
||||
volumes:
|
||||
- ./messages:/usr/src/app
|
||||
- ./back:/usr/src/back
|
||||
- ./front:/usr/src/front
|
||||
- ./pusher:/usr/src/pusher
|
||||
|
||||
redis:
|
||||
image: redis:6
|
||||
|
||||
redisinsight:
|
||||
image: redislabs/redisinsight:latest
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.redisinsight.rule=Host(`redis.workadventure.localhost`)"
|
||||
- "traefik.http.routers.redisinsight.entryPoints=web"
|
||||
- "traefik.http.services.redisinsight.loadbalancer.server.port=8001"
|
||||
- "traefik.http.routers.redisinsight-ssl.rule=Host(`redis.workadventure.localhost`)"
|
||||
- "traefik.http.routers.redisinsight-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.redisinsight-ssl.tls=true"
|
||||
- "traefik.http.routers.redisinsight-ssl.service=redisinsight"
|
||||
|
||||
icon:
|
||||
image: matthiasluedtke/iconserver:v3.13.0
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.icon.rule=Host(`icon.workadventure.localhost`)"
|
||||
- "traefik.http.routers.icon.entryPoints=web"
|
||||
- "traefik.http.services.icon.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.icon-ssl.rule=Host(`icon.workadventure.localhost`)"
|
||||
- "traefik.http.routers.icon-ssl.entryPoints=websecure"
|
||||
- "traefik.http.routers.icon-ssl.tls=true"
|
||||
- "traefik.http.routers.icon-ssl.service=icon"
|
||||
|
||||
# coturn:
|
||||
# image: coturn/coturn:4.5.2
|
||||
# command:
|
||||
# - turnserver
|
||||
# #- -c=/etc/coturn/turnserver.conf
|
||||
# - --log-file=stdout
|
||||
# - --external-ip=$$(detect-external-ip)
|
||||
# - --listening-port=3478
|
||||
# - --min-port=10000
|
||||
# - --max-port=10010
|
||||
# - --tls-listening-port=5349
|
||||
# - --listening-ip=0.0.0.0
|
||||
# - --realm=coturn.workadventure.localhost
|
||||
# - --server-name=coturn.workadventure.localhost
|
||||
# - --lt-cred-mech
|
||||
# # Enable Coturn "REST API" to validate temporary passwords.
|
||||
# #- --use-auth-secret
|
||||
# #- --static-auth-secret=SomeStaticAuthSecret
|
||||
# #- --userdb=/var/lib/turn/turndb
|
||||
# - --user=workadventure:WorkAdventure123
|
||||
# # use real-valid certificate/privatekey files
|
||||
# #- --cert=/root/letsencrypt/fullchain.pem
|
||||
# #- --pkey=/root/letsencrypt/privkey.pem
|
||||
# network_mode: host
|
14
apps/workadventure/front-claim0-persistentvolumeclaim.yaml
Normal file
14
apps/workadventure/front-claim0-persistentvolumeclaim.yaml
Normal file
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: front-claim0
|
||||
name: front-claim0
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
92
apps/workadventure/front-deployment.yaml
Normal file
92
apps/workadventure/front-deployment.yaml
Normal file
|
@ -0,0 +1,92 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.front-ssl.entryPoints: websecure
|
||||
traefik.http.routers.front-ssl.rule: Host(`play.workadventure.localhost`)
|
||||
traefik.http.routers.front-ssl.service: front
|
||||
traefik.http.routers.front-ssl.tls: "true"
|
||||
traefik.http.routers.front.entryPoints: web
|
||||
traefik.http.routers.front.rule: Host(`play.workadventure.localhost`)
|
||||
traefik.http.services.front.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: front
|
||||
name: front
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: front
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.front-ssl.entryPoints: websecure
|
||||
traefik.http.routers.front-ssl.rule: Host(`play.workadventure.localhost`)
|
||||
traefik.http.routers.front-ssl.service: front
|
||||
traefik.http.routers.front-ssl.tls: "true"
|
||||
traefik.http.routers.front.entryPoints: web
|
||||
traefik.http.routers.front.rule: Host(`play.workadventure.localhost`)
|
||||
traefik.http.services.front.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: front
|
||||
spec:
|
||||
containers:
|
||||
- args:
|
||||
- yarn
|
||||
- run
|
||||
- start
|
||||
env:
|
||||
- name: DEBUG_MODE
|
||||
- name: DISABLE_ANONYMOUS
|
||||
- name: DISABLE_NOTIFICATIONS
|
||||
- name: HOST
|
||||
value: 0.0.0.0
|
||||
- name: ICON_URL
|
||||
value: //icon.workadventure.localhost
|
||||
- name: JITSI_PRIVATE_MODE
|
||||
- name: JITSI_URL
|
||||
- name: LIVE_RELOAD
|
||||
value: "true"
|
||||
- name: MAX_PER_GROUP
|
||||
- name: MAX_USERNAME_LENGTH
|
||||
- name: NODE_ENV
|
||||
value: development
|
||||
- name: OPID_LOGIN_SCREEN_PROVIDER
|
||||
- name: PUSHER_URL
|
||||
value: //pusher.workadventure.localhost
|
||||
- name: SKIP_RENDER_OPTIMIZATIONS
|
||||
- name: STARTUP_COMMAND_1
|
||||
value: ./templater.sh
|
||||
- name: STARTUP_COMMAND_2
|
||||
value: yarn install
|
||||
- name: START_ROOM_URL
|
||||
- name: STUN_SERVER
|
||||
value: stun:stun.l.google.com:19302
|
||||
- name: TURN_PASSWORD
|
||||
- name: TURN_SERVER
|
||||
value: turn:coturn.workadventure.localhost:3478,turns:coturn.workadventure.localhost:5349
|
||||
- name: TURN_USER
|
||||
- name: UPLOADER_URL
|
||||
value: //uploader.workadventure.localhost
|
||||
image: thecodingmachine/nodejs:14
|
||||
name: front
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /usr/src/app
|
||||
name: front-claim0
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: front-claim0
|
||||
persistentVolumeClaim:
|
||||
claimName: front-claim0
|
||||
status: {}
|
47
apps/workadventure/icon-deployment.yaml
Normal file
47
apps/workadventure/icon-deployment.yaml
Normal file
|
@ -0,0 +1,47 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.icon-ssl.entryPoints: websecure
|
||||
traefik.http.routers.icon-ssl.rule: Host(`icon.workadventure.localhost`)
|
||||
traefik.http.routers.icon-ssl.service: icon
|
||||
traefik.http.routers.icon-ssl.tls: "true"
|
||||
traefik.http.routers.icon.entryPoints: web
|
||||
traefik.http.routers.icon.rule: Host(`icon.workadventure.localhost`)
|
||||
traefik.http.services.icon.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: icon
|
||||
name: icon
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: icon
|
||||
strategy: {}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.icon-ssl.entryPoints: websecure
|
||||
traefik.http.routers.icon-ssl.rule: Host(`icon.workadventure.localhost`)
|
||||
traefik.http.routers.icon-ssl.service: icon
|
||||
traefik.http.routers.icon-ssl.tls: "true"
|
||||
traefik.http.routers.icon.entryPoints: web
|
||||
traefik.http.routers.icon.rule: Host(`icon.workadventure.localhost`)
|
||||
traefik.http.services.icon.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: icon
|
||||
spec:
|
||||
containers:
|
||||
- image: matthiasluedtke/iconserver:v3.13.0
|
||||
name: icon
|
||||
resources: {}
|
||||
restartPolicy: Always
|
||||
status: {}
|
14
apps/workadventure/maps-claim0-persistentvolumeclaim.yaml
Normal file
14
apps/workadventure/maps-claim0-persistentvolumeclaim.yaml
Normal file
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: maps-claim0
|
||||
name: maps-claim0
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
69
apps/workadventure/maps-deployment.yaml
Normal file
69
apps/workadventure/maps-deployment.yaml
Normal file
|
@ -0,0 +1,69 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.maps-ssl.entryPoints: websecure
|
||||
traefik.http.routers.maps-ssl.rule: Host(`maps.workadventure.localhost`)
|
||||
traefik.http.routers.maps-ssl.service: maps
|
||||
traefik.http.routers.maps-ssl.tls: "true"
|
||||
traefik.http.routers.maps.entryPoints: web,traefik
|
||||
traefik.http.routers.maps.rule: Host(`maps.workadventure.localhost`)
|
||||
traefik.http.services.maps.loadbalancer.server.port: "80"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: maps
|
||||
name: maps
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: maps
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.maps-ssl.entryPoints: websecure
|
||||
traefik.http.routers.maps-ssl.rule: Host(`maps.workadventure.localhost`)
|
||||
traefik.http.routers.maps-ssl.service: maps
|
||||
traefik.http.routers.maps-ssl.tls: "true"
|
||||
traefik.http.routers.maps.entryPoints: web,traefik
|
||||
traefik.http.routers.maps.rule: Host(`maps.workadventure.localhost`)
|
||||
traefik.http.services.maps.loadbalancer.server.port: "80"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: maps
|
||||
spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: DEBUG_MODE
|
||||
- name: FRONT_URL
|
||||
value: http://play.workadventure.localhost
|
||||
- name: HOST
|
||||
value: 0.0.0.0
|
||||
- name: NODE_ENV
|
||||
value: development
|
||||
- name: STARTUP_COMMAND_0
|
||||
value: sudo a2enmod headers
|
||||
- name: STARTUP_COMMAND_1
|
||||
value: yarn install
|
||||
- name: STARTUP_COMMAND_2
|
||||
value: yarn run dev &
|
||||
image: thecodingmachine/php:8.1-v4-apache-node12
|
||||
name: maps
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /var/www/html
|
||||
name: maps-claim0
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: maps-claim0
|
||||
persistentVolumeClaim:
|
||||
claimName: maps-claim0
|
||||
status: {}
|
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: messages-claim0
|
||||
name: messages-claim0
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: messages-claim1
|
||||
name: messages-claim1
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: messages-claim2
|
||||
name: messages-claim2
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: messages-claim3
|
||||
name: messages-claim3
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
59
apps/workadventure/messages-deployment.yaml
Normal file
59
apps/workadventure/messages-deployment.yaml
Normal file
|
@ -0,0 +1,59 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: messages
|
||||
name: messages
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: messages
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: messages
|
||||
spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: STARTUP_COMMAND_1
|
||||
value: yarn install
|
||||
- name: STARTUP_COMMAND_2
|
||||
value: yarn run proto:watch
|
||||
image: thecodingmachine/workadventure-back-base:latest
|
||||
name: messages
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /usr/src/app
|
||||
name: messages-claim0
|
||||
- mountPath: /usr/src/back
|
||||
name: messages-claim1
|
||||
- mountPath: /usr/src/front
|
||||
name: messages-claim2
|
||||
- mountPath: /usr/src/pusher
|
||||
name: messages-claim3
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: messages-claim0
|
||||
persistentVolumeClaim:
|
||||
claimName: messages-claim0
|
||||
- name: messages-claim1
|
||||
persistentVolumeClaim:
|
||||
claimName: messages-claim1
|
||||
- name: messages-claim2
|
||||
persistentVolumeClaim:
|
||||
claimName: messages-claim2
|
||||
- name: messages-claim3
|
||||
persistentVolumeClaim:
|
||||
claimName: messages-claim3
|
||||
status: {}
|
14
apps/workadventure/pusher-claim0-persistentvolumeclaim.yaml
Normal file
14
apps/workadventure/pusher-claim0-persistentvolumeclaim.yaml
Normal file
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: pusher-claim0
|
||||
name: pusher-claim0
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
81
apps/workadventure/pusher-deployment.yaml
Normal file
81
apps/workadventure/pusher-deployment.yaml
Normal file
|
@ -0,0 +1,81 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.pusher-ssl.entryPoints: websecure
|
||||
traefik.http.routers.pusher-ssl.rule: Host(`pusher.workadventure.localhost`)
|
||||
traefik.http.routers.pusher-ssl.service: pusher
|
||||
traefik.http.routers.pusher-ssl.tls: "true"
|
||||
traefik.http.routers.pusher.entryPoints: web
|
||||
traefik.http.routers.pusher.rule: Host(`pusher.workadventure.localhost`)
|
||||
traefik.http.services.pusher.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: pusher
|
||||
name: pusher
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: pusher
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.pusher-ssl.entryPoints: websecure
|
||||
traefik.http.routers.pusher-ssl.rule: Host(`pusher.workadventure.localhost`)
|
||||
traefik.http.routers.pusher-ssl.service: pusher
|
||||
traefik.http.routers.pusher-ssl.tls: "true"
|
||||
traefik.http.routers.pusher.entryPoints: web
|
||||
traefik.http.routers.pusher.rule: Host(`pusher.workadventure.localhost`)
|
||||
traefik.http.services.pusher.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: pusher
|
||||
spec:
|
||||
containers:
|
||||
- args:
|
||||
- yarn
|
||||
- dev
|
||||
env:
|
||||
- name: ADMIN_API_TOKEN
|
||||
- name: API_URL
|
||||
value: back:50051
|
||||
- name: DEBUG
|
||||
value: socket:*
|
||||
- name: DISABLE_ANONYMOUS
|
||||
- name: FRONT_URL
|
||||
value: http://play.workadventure.localhost
|
||||
- name: JITSI_ISS
|
||||
- name: JITSI_URL
|
||||
- name: OPID_CLIENT_ID
|
||||
- name: OPID_CLIENT_ISSUER
|
||||
- name: OPID_CLIENT_REDIRECT_URL
|
||||
- name: OPID_CLIENT_SECRET
|
||||
- name: OPID_PROFILE_SCREEN_PROVIDER
|
||||
- name: SECRET_JITSI_KEY
|
||||
- name: SECRET_KEY
|
||||
value: yourSecretKey
|
||||
- name: STARTUP_COMMAND_1
|
||||
value: yarn install
|
||||
- name: STARTUP_COMMAND_2
|
||||
value: while [ ! -f /usr/src/app/src/Messages/generated/messages_pb.js ]; do sleep 1; done
|
||||
image: thecodingmachine/nodejs:14
|
||||
name: pusher
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /usr/src/app
|
||||
name: pusher-claim0
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: pusher-claim0
|
||||
persistentVolumeClaim:
|
||||
claimName: pusher-claim0
|
||||
status: {}
|
31
apps/workadventure/redis-deployment.yaml
Normal file
31
apps/workadventure/redis-deployment.yaml
Normal file
|
@ -0,0 +1,31 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: redis
|
||||
name: redis
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: redis
|
||||
strategy: {}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: redis
|
||||
spec:
|
||||
containers:
|
||||
- image: redis:6
|
||||
name: redis
|
||||
resources: {}
|
||||
restartPolicy: Always
|
||||
status: {}
|
47
apps/workadventure/redisinsight-deployment.yaml
Normal file
47
apps/workadventure/redisinsight-deployment.yaml
Normal file
|
@ -0,0 +1,47 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.redisinsight-ssl.entryPoints: websecure
|
||||
traefik.http.routers.redisinsight-ssl.rule: Host(`redis.workadventure.localhost`)
|
||||
traefik.http.routers.redisinsight-ssl.service: redisinsight
|
||||
traefik.http.routers.redisinsight-ssl.tls: "true"
|
||||
traefik.http.routers.redisinsight.entryPoints: web
|
||||
traefik.http.routers.redisinsight.rule: Host(`redis.workadventure.localhost`)
|
||||
traefik.http.services.redisinsight.loadbalancer.server.port: "8001"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: redisinsight
|
||||
name: redisinsight
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: redisinsight
|
||||
strategy: {}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.redisinsight-ssl.entryPoints: websecure
|
||||
traefik.http.routers.redisinsight-ssl.rule: Host(`redis.workadventure.localhost`)
|
||||
traefik.http.routers.redisinsight-ssl.service: redisinsight
|
||||
traefik.http.routers.redisinsight-ssl.tls: "true"
|
||||
traefik.http.routers.redisinsight.entryPoints: web
|
||||
traefik.http.routers.redisinsight.rule: Host(`redis.workadventure.localhost`)
|
||||
traefik.http.services.redisinsight.loadbalancer.server.port: "8001"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: redisinsight
|
||||
spec:
|
||||
containers:
|
||||
- image: redislabs/redisinsight:latest
|
||||
name: redisinsight
|
||||
resources: {}
|
||||
restartPolicy: Always
|
||||
status: {}
|
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: reverse-proxy-claim0
|
||||
name: reverse-proxy-claim0
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
50
apps/workadventure/reverse-proxy-deployment.yaml
Normal file
50
apps/workadventure/reverse-proxy-deployment.yaml
Normal file
|
@ -0,0 +1,50 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: reverse-proxy
|
||||
name: reverse-proxy
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: reverse-proxy
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.network/default: "true"
|
||||
io.kompose.service: reverse-proxy
|
||||
spec:
|
||||
containers:
|
||||
- args:
|
||||
- --api.insecure=true
|
||||
- --providers.docker
|
||||
- --entryPoints.web.address=:80
|
||||
- --entryPoints.websecure.address=:443
|
||||
- --providers.docker.exposedbydefault=false
|
||||
image: traefik:v2.5
|
||||
name: reverse-proxy
|
||||
ports:
|
||||
- containerPort: 80
|
||||
- containerPort: 443
|
||||
- containerPort: 8080
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /var/run/docker.sock
|
||||
name: reverse-proxy-claim0
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: reverse-proxy-claim0
|
||||
persistentVolumeClaim:
|
||||
claimName: reverse-proxy-claim0
|
||||
status: {}
|
25
apps/workadventure/reverse-proxy-service.yaml
Normal file
25
apps/workadventure/reverse-proxy-service.yaml
Normal file
|
@ -0,0 +1,25 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: reverse-proxy
|
||||
name: reverse-proxy
|
||||
spec:
|
||||
ports:
|
||||
- name: "80"
|
||||
port: 80
|
||||
targetPort: 80
|
||||
- name: "443"
|
||||
port: 443
|
||||
targetPort: 443
|
||||
- name: "8080"
|
||||
port: 8080
|
||||
targetPort: 8080
|
||||
selector:
|
||||
io.kompose.service: reverse-proxy
|
||||
status:
|
||||
loadBalancer: {}
|
|
@ -0,0 +1,14 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: uploader-claim0
|
||||
name: uploader-claim0
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 100Mi
|
||||
status: {}
|
63
apps/workadventure/uploader-deployment.yaml
Normal file
63
apps/workadventure/uploader-deployment.yaml
Normal file
|
@ -0,0 +1,63 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.uploader-ssl.entryPoints: websecure
|
||||
traefik.http.routers.uploader-ssl.rule: Host(`uploader.workadventure.localhost`)
|
||||
traefik.http.routers.uploader-ssl.service: uploader
|
||||
traefik.http.routers.uploader-ssl.tls: "true"
|
||||
traefik.http.routers.uploader.entryPoints: web
|
||||
traefik.http.routers.uploader.rule: Host(`uploader.workadventure.localhost`)
|
||||
traefik.http.services.uploader.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: uploader
|
||||
name: uploader
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: uploader
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: /home/nico/Downloads/kompose convert
|
||||
kompose.version: 1.26.0 (40646f47)
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.uploader-ssl.entryPoints: websecure
|
||||
traefik.http.routers.uploader-ssl.rule: Host(`uploader.workadventure.localhost`)
|
||||
traefik.http.routers.uploader-ssl.service: uploader
|
||||
traefik.http.routers.uploader-ssl.tls: "true"
|
||||
traefik.http.routers.uploader.entryPoints: web
|
||||
traefik.http.routers.uploader.rule: Host(`uploader.workadventure.localhost`)
|
||||
traefik.http.services.uploader.loadbalancer.server.port: "8080"
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: uploader
|
||||
spec:
|
||||
containers:
|
||||
- args:
|
||||
- yarn
|
||||
- dev
|
||||
env:
|
||||
- name: DEBUG
|
||||
value: '*'
|
||||
- name: STARTUP_COMMAND_1
|
||||
value: yarn install
|
||||
image: thecodingmachine/nodejs:12
|
||||
name: uploader
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /usr/src/app
|
||||
name: uploader-claim0
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: uploader-claim0
|
||||
persistentVolumeClaim:
|
||||
claimName: uploader-claim0
|
||||
status: {}
|
Loading…
Reference in a new issue