parent
ed410d9e0a
commit
33584a5ba5
@ -0,0 +1,24 @@ |
|||||||
|
# DOCKER STACK |
||||||
|
|
||||||
|
In order to make jitsi docker-compose config work with docker stack we have to take in consideration several things |
||||||
|
1. docker doesnt handle dots (`.`) in the network names due to the internal DNS |
||||||
|
2. docker-compose interpolates the configuration set in the `.env` file while docker itself doesn't |
||||||
|
|
||||||
|
## 1. Fixing the network |
||||||
|
|
||||||
|
If you examine the main `docker-compose.yml` file, yo will realize that you can set a name for docker to handle and |
||||||
|
another (alias) for docker to expose. Whith this _alias_ trick we can make XMPP support our network 'domain' |
||||||
|
|
||||||
|
## 2. Interpolating the configuration |
||||||
|
|
||||||
|
Start with the commands as stated in the main README.md. Simply copy the example config into your personal `.env` |
||||||
|
file and customize it. Once you have it ready generate the deployment with all the interpolated values with |
||||||
|
``` |
||||||
|
docker-compose config > deployment.yml |
||||||
|
``` |
||||||
|
If you examine the `deployment.yml` you will realize all your variables are set already |
||||||
|
|
||||||
|
Now you can start your docker stack like you would normaly do |
||||||
|
``` |
||||||
|
docker stack deploy --compose-file deployment.yml jitsi |
||||||
|
``` |
@ -0,0 +1,166 @@ |
|||||||
|
version: '3' |
||||||
|
|
||||||
|
services: |
||||||
|
# Frontend |
||||||
|
web: |
||||||
|
image: jitsi/web |
||||||
|
ports: |
||||||
|
- '${HTTP_PORT}:80' |
||||||
|
- '${HTTPS_PORT}:443' |
||||||
|
volumes: |
||||||
|
- ${CONFIG}/web:/config |
||||||
|
- ${CONFIG}/web/letsencrypt:/etc/letsencrypt |
||||||
|
- ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts |
||||||
|
environment: |
||||||
|
- ENABLE_AUTH |
||||||
|
- ENABLE_GUESTS |
||||||
|
- ENABLE_LETSENCRYPT |
||||||
|
- ENABLE_HTTP_REDIRECT |
||||||
|
- ENABLE_TRANSCRIPTIONS |
||||||
|
- DISABLE_HTTPS |
||||||
|
- JICOFO_AUTH_USER |
||||||
|
- LETSENCRYPT_DOMAIN |
||||||
|
- LETSENCRYPT_EMAIL |
||||||
|
- PUBLIC_URL |
||||||
|
- XMPP_DOMAIN |
||||||
|
- XMPP_AUTH_DOMAIN |
||||||
|
- XMPP_BOSH_URL_BASE |
||||||
|
- XMPP_GUEST_DOMAIN |
||||||
|
- XMPP_MUC_DOMAIN |
||||||
|
- XMPP_RECORDER_DOMAIN |
||||||
|
- ETHERPAD_URL_BASE |
||||||
|
- TZ |
||||||
|
- JIBRI_BREWERY_MUC |
||||||
|
- JIBRI_PENDING_TIMEOUT |
||||||
|
- JIBRI_XMPP_USER |
||||||
|
- JIBRI_XMPP_PASSWORD |
||||||
|
- JIBRI_RECORDER_USER |
||||||
|
- JIBRI_RECORDER_PASSWORD |
||||||
|
- ENABLE_RECORDING |
||||||
|
networks: |
||||||
|
meet_jitsi: |
||||||
|
aliases: |
||||||
|
- ${XMPP_DOMAIN} |
||||||
|
|
||||||
|
# XMPP server |
||||||
|
prosody: |
||||||
|
image: jitsi/prosody |
||||||
|
expose: |
||||||
|
- '5222' |
||||||
|
- '5347' |
||||||
|
- '5280' |
||||||
|
volumes: |
||||||
|
- ${CONFIG}/prosody:/config |
||||||
|
environment: |
||||||
|
- AUTH_TYPE |
||||||
|
- ENABLE_AUTH |
||||||
|
- ENABLE_GUESTS |
||||||
|
- GLOBAL_MODULES |
||||||
|
- GLOBAL_CONFIG |
||||||
|
- LDAP_URL |
||||||
|
- LDAP_BASE |
||||||
|
- LDAP_BINDDN |
||||||
|
- LDAP_BINDPW |
||||||
|
- LDAP_FILTER |
||||||
|
- LDAP_AUTH_METHOD |
||||||
|
- LDAP_VERSION |
||||||
|
- LDAP_USE_TLS |
||||||
|
- LDAP_TLS_CIPHERS |
||||||
|
- LDAP_TLS_CHECK_PEER |
||||||
|
- LDAP_TLS_CACERT_FILE |
||||||
|
- LDAP_TLS_CACERT_DIR |
||||||
|
- LDAP_START_TLS |
||||||
|
- XMPP_DOMAIN |
||||||
|
- XMPP_AUTH_DOMAIN |
||||||
|
- XMPP_GUEST_DOMAIN |
||||||
|
- XMPP_MUC_DOMAIN |
||||||
|
- XMPP_INTERNAL_MUC_DOMAIN |
||||||
|
- XMPP_MODULES |
||||||
|
- XMPP_MUC_MODULES |
||||||
|
- XMPP_INTERNAL_MUC_MODULES |
||||||
|
- XMPP_RECORDER_DOMAIN |
||||||
|
- JICOFO_COMPONENT_SECRET |
||||||
|
- JICOFO_AUTH_USER |
||||||
|
- JICOFO_AUTH_PASSWORD |
||||||
|
- JVB_AUTH_USER |
||||||
|
- JVB_AUTH_PASSWORD |
||||||
|
- JIGASI_XMPP_USER |
||||||
|
- JIGASI_XMPP_PASSWORD |
||||||
|
- JIBRI_XMPP_USER |
||||||
|
- JIBRI_XMPP_PASSWORD |
||||||
|
- JIBRI_RECORDER_USER |
||||||
|
- JIBRI_RECORDER_PASSWORD |
||||||
|
- JWT_APP_ID |
||||||
|
- JWT_APP_SECRET |
||||||
|
- JWT_ACCEPTED_ISSUERS |
||||||
|
- JWT_ACCEPTED_AUDIENCES |
||||||
|
- JWT_ASAP_KEYSERVER |
||||||
|
- JWT_ALLOW_EMPTY |
||||||
|
- JWT_AUTH_TYPE |
||||||
|
- JWT_TOKEN_AUTH_MODULE |
||||||
|
- LOG_LEVEL |
||||||
|
- TZ |
||||||
|
networks: |
||||||
|
meet_jitsi: |
||||||
|
aliases: |
||||||
|
- ${XMPP_SERVER} |
||||||
|
|
||||||
|
# Focus component |
||||||
|
jicofo: |
||||||
|
image: jitsi/jicofo |
||||||
|
volumes: |
||||||
|
- ${CONFIG}/jicofo:/config |
||||||
|
environment: |
||||||
|
- ENABLE_AUTH |
||||||
|
- XMPP_DOMAIN |
||||||
|
- XMPP_AUTH_DOMAIN |
||||||
|
- XMPP_INTERNAL_MUC_DOMAIN |
||||||
|
- XMPP_SERVER |
||||||
|
- JICOFO_COMPONENT_SECRET |
||||||
|
- JICOFO_AUTH_USER |
||||||
|
- JICOFO_AUTH_PASSWORD |
||||||
|
- JICOFO_RESERVATION_REST_BASE_URL |
||||||
|
- JVB_BREWERY_MUC |
||||||
|
- JIGASI_BREWERY_MUC |
||||||
|
- JIBRI_BREWERY_MUC |
||||||
|
- JIBRI_PENDING_TIMEOUT |
||||||
|
- TZ |
||||||
|
depends_on: |
||||||
|
- prosody |
||||||
|
networks: |
||||||
|
meet_jitsi: |
||||||
|
aliases: |
||||||
|
- meet.jitsi |
||||||
|
|
||||||
|
# Video bridge |
||||||
|
jvb: |
||||||
|
image: jitsi/jvb |
||||||
|
ports: |
||||||
|
- '${JVB_PORT}:${JVB_PORT}/udp' |
||||||
|
- '${JVB_TCP_PORT}:${JVB_TCP_PORT}' |
||||||
|
volumes: |
||||||
|
- ${CONFIG}/jvb:/config |
||||||
|
environment: |
||||||
|
- DOCKER_HOST_ADDRESS |
||||||
|
- XMPP_AUTH_DOMAIN |
||||||
|
- XMPP_INTERNAL_MUC_DOMAIN |
||||||
|
- XMPP_SERVER |
||||||
|
- JVB_AUTH_USER |
||||||
|
- JVB_AUTH_PASSWORD |
||||||
|
- JVB_BREWERY_MUC |
||||||
|
- JVB_PORT |
||||||
|
- JVB_TCP_HARVESTER_DISABLED |
||||||
|
- JVB_TCP_PORT |
||||||
|
- JVB_STUN_SERVERS |
||||||
|
- JVB_ENABLE_APIS |
||||||
|
- TZ |
||||||
|
depends_on: |
||||||
|
- prosody |
||||||
|
networks: |
||||||
|
meet_jitsi: |
||||||
|
aliases: |
||||||
|
- meet.jitsi |
||||||
|
|
||||||
|
# Custom network so all services can communicate using a FQDN |
||||||
|
networks: |
||||||
|
meet_jitsi: |
Loading…
Reference in new issue