Este commit está contenido en:
Your Name
2020-08-02 23:26:56 +00:00
padre 1e62daec61
commit 59f05bf777
Se han modificado 2 ficheros con 622 adiciones y 0 borrados

323
production/jitsi-meet/.env Archivo normal
Ver fichero

@@ -0,0 +1,323 @@
# XMPP component password for Jicofo
JICOFO_COMPONENT_SECRET=s3cr3t
# XMPP password for Jicofo client connections
JICOFO_AUTH_PASSWORD=p4ssw0rd
# XMPP password for JVB client connections
JVB_AUTH_PASSWORD=p4ssw0rd
# XMPP password for Jigasi MUC client connections
JIGASI_XMPP_PASSWORD=p4ssw0rd
# XMPP recorder password for Jibri client connections
JIBRI_RECORDER_PASSWORD=p4ssw0rd
# XMPP password for Jibri client connections
JIBRI_XMPP_PASSWORD=p4ssw0rd
#
# Basic configuration options
#
# Directory where all configuration will be stored.
CONFIG=./jitsi-meet-cfg
# Exposed HTTP port.
HTTP_PORT=80
# Exposed HTTPS port.
HTTPS_PORT=443
# System time zone.
TZ=Europe/Madrid
# Public URL for the web service.
PUBLIC_URL=https://meet.hatthieves.es
# IP address of the Docker host. See the "Running on a LAN environment" section
# in the README.
DOCKER_HOST_ADDRESS=172.145.0.104
#
# Let's Encrypt configuration
#
# Enable Let's Encrypt certificate generation.
ENABLE_LETSENCRYPT=0
# Domain for which to generate the certificate.
#LETSENCRYPT_DOMAIN=meet.example.com
# E-Mail for receiving important account notifications (mandatory).
#LETSENCRYPT_EMAIL=alice@atlanta.net
#
# Etherpad integration (for document sharing)
#
# Set etherpad-lite URL (uncomment to enable).
#ETHERPAD_URL_BASE=https://pad.hatthieves.es
#
# Basic Jigasi configuration options (needed for SIP gateway support)
#
# SIP URI for incoming / outgoing calls.
JIGASI_SIP_URI=14@hatthieves.es
# Password for the specified SIP account as a clear text
JIGASI_SIP_PASSWORD=passw0rd
# SIP server (use the SIP account domain if in doubt).
JIGASI_SIP_SERVER=hatthieves.es
# SIP server port
JIGASI_SIP_PORT=5060
# SIP server transport
JIGASI_SIP_TRANSPORT=UDP
#
# Authentication configuration (see README for details)
#
# Enable authentication.
ENABLE_AUTH=0
# Enable guest access.
ENABLE_GUESTS=1
# Select authentication type: internal, jwt or ldap
AUTH_TYPE=internal
# JWT auuthentication
#
# Application identifier.
#JWT_APP_ID=my_jitsi_app_id
# Application secret known only to your token.
#JWT_APP_SECRET=my_jitsi_app_secret
# (Optional) Set asap_accepted_issuers as a comma separated list.
#JWT_ACCEPTED_ISSUERS=my_web_client,my_app_client
# (Optional) Set asap_accepted_audiences as a comma separated list.
#JWT_ACCEPTED_AUDIENCES=my_server1,my_server2
# LDAP authentication (for more information see the Cyrus SASL saslauthd.conf man page)
#
# LDAP url for connection.
#LDAP_URL=ldaps://ldap.domain.com/
# LDAP base DN. Can be empty
#LDAP_BASE=DC=example,DC=domain,DC=com
# LDAP user DN. Do not specify this parameter for the anonymous bind.
#LDAP_BINDDN=CN=binduser,OU=users,DC=example,DC=domain,DC=com
# LDAP user password. Do not specify this parameter for the anonymous bind.
#LDAP_BINDPW=LdapUserPassw0rd
# LDAP filter. Tokens example:
# %1-9 - if the input key is user@mail.domain.com, then %1 is com, %2 is domain and %3 is mail.
# %s - %s is replaced by the complete service string.
# %r - %r is replaced by the complete realm string.
#LDAP_FILTER=(sAMAccountName=%u)
# LDAP authentication method
#LDAP_AUTH_METHOD=bind
# LDAP version
#LDAP_VERSION=3
# LDAP TLS using
#LDAP_USE_TLS=1
# List of SSL/TLS ciphers to allow.
#LDAP_TLS_CIPHERS=SECURE256:SECURE128:!AES-128-CBC:!ARCFOUR-128:!CAMELLIA-128-CBC:!3DES-CBC:!CAMELLIA-128-CBC
# Require and verify server certificate
#LDAP_TLS_CHECK_PEER=1
# Path to CA cert file. Used when server sertificate verify is enabled.
#LDAP_TLS_CACERT_FILE=/etc/ssl/certs/ca-certificates.crt
# Path to CA certs directory. Used when server sertificate verify is enabled.
#LDAP_TLS_CACERT_DIR=/etc/ssl/certs
# Wether to use starttls, implies LDAPv3 and requires ldap:// instead of ldaps://
# LDAP_START_TLS=1
#
# Advanced configuration options (you generally don't need to change these)
#
# Internal XMPP domain.
XMPP_DOMAIN=xmpp.hatthieves.es
# Internal XMPP server
XMPP_SERVER=172.145.0.102
# Internal XMPP server URL
XMPP_BOSH_URL_BASE=http://xmpp.hatthieves.es:5280
# Internal XMPP domain for authenticated services.
XMPP_AUTH_DOMAIN=auth.hatthieves.es
# XMPP domain for the MUC.
XMPP_MUC_DOMAIN=muc.hatthieves.es
# XMPP domain for the internal MUC used for jibri, jigasi and jvb pools.
XMPP_INTERNAL_MUC_DOMAIN=internal-muc.hatthieves.es
# XMPP domain for unauthenticated users.
XMPP_GUEST_DOMAIN=guest.hatthieves.es
# Custom Prosody modules for XMPP_DOMAIN (comma separated)
XMPP_MODULES=
# Custom Prosody modules for MUC component (comma separated)
XMPP_MUC_MODULES=
# Custom Prosody modules for internal MUC component (comma separated)
XMPP_INTERNAL_MUC_MODULES=
# MUC for the JVB pool.
JVB_BREWERY_MUC=jvbbrewery
# XMPP user for JVB client connections.
JVB_AUTH_USER=jvb
# XMPP password for JVB client connections.
#JVB_AUTH_PASSWORD=passw0rd
# STUN servers used to discover the server's public IP.
JVB_STUN_SERVERS=hatthieves.es:3478
JVB_HOSTNAME=xmpp.hatthieves.es
#JVB_HOST=172.145.0.102
# Media port for the Jitsi Videobridge
JVB_PORT=10000
# TCP Fallback for Jitsi Videobridge for when UDP isn't available
JVB_TCP_HARVESTER_DISABLED=false
JVB_TCP_PORT=4443
# A comma separated list of APIs to enable when the JVB is started. The default is none.
# See https://github.com/jitsi/jitsi-videobridge/blob/master/doc/rest.md for more information
JVB_ENABLE_APIS=
# XMPP component password for Jicofo.
#JICOFO_COMPONENT_SECRET=s3cr37
# XMPP user for Jicofo client connections. NOTE: this option doesn't currently work due to a bug.
JICOFO_AUTH_USER=focus
# XMPP password for Jicofo client connections.
#JICOFO_AUTH_PASSWORD=passw0rd
# Base URL of Jicofo's reservation REST API
#JICOFO_RESERVATION_REST_BASE_URL=http://reservation.example.com
# XMPP user for Jigasi MUC client connections.
JIGASI_XMPP_USER=jigasi
# XMPP password for Jigasi MUC client connections.
#JIGASI_XMPP_PASSWORD=passw0rd
# MUC name for the Jigasi pool.
JIGASI_BREWERY_MUC=jigasibrewery
# Minimum port for media used by Jigasi.
JIGASI_PORT_MIN=20000
# Maximum port for media used by Jigasi.
JIGASI_PORT_MAX=20050
# Enable SDES srtp
JIGASI_ENABLE_SDES_SRTP=0
# Keepalive method
JIGASI_SIP_KEEP_ALIVE_METHOD=OPTIONS
# Health-check extension
JIGASI_HEALTH_CHECK_SIP_URI=keepalive
# Health-check interval
JIGASI_HEALTH_CHECK_INTERVAL=300000
# Enable Jigasi transcription.
ENABLE_TRANSCRIPTIONS=0
# Jigasi will recordord an audio when transcriber is on. Default false.
JIGASI_TRANSCRIBER_RECORD_AUDIO=false
# Jigasi will send transcribed text to the chat when transcriber is on. Default false.
JIGASI_TRANSCRIBER_SEND_TXT=false
# Jigasi post to the chat an url with transcription file. Default false.
JIGASI_TRANSCRIBER_ADVERTISE_URL=true
# Credentials for connect to Cloud Google API from Jigasi. Path located inside the container.
# Please read https://cloud.google.com/text-to-speech/docs/quickstart-protocol
# section "Before you begin" from 1 to 5 paragraph. Copy the key on
# the docker host to ${CONFIG}/jigasi/key.json and to enable this setting:
#GOOGLE_APPLICATION_CREDENTIALS=/config/key.json
## Enable recording
#ENABLE_RECORDING=1
#
## XMPP domain for the jibri recorder
#XMPP_RECORDER_DOMAIN=recorder.hatthieves.es
#
## XMPP recorder user for Jibri client connections.
#JIBRI_RECORDER_USER=recorder
#
## XMPP recorder password for Jibri client connections.
#JIBRI_RECORDER_PASSWORD=passw0rd
#
## Directory for recordings inside Jibri container.
#JIBRI_RECORDING_DIR=/config/recordings
#
## The finalizing script. Will run after recording is complete.
#JIBRI_FINALIZE_RECORDING_SCRIPT_PATH=/config/finalize.sh
#
## XMPP user for Jibri client connections.
#JIBRI_XMPP_USER=jibri
#
## XMPP password for Jibri client connections.
#JIBRI_XMPP_PASSWORD=passw0rd
#
## MUC name for the Jibri pool.
#JIBRI_BREWERY_MUC=jibribrewery
#
## MUC connection timeout
#JIBRI_PENDING_TIMEOUT=90
#
## When jibri gets a request to start a service for a room, the room
## jid will look like: roomName@optional.prefixes.subdomain.xmpp_domain
## We'll build the url for the call by transforming that into:
## https://xmpp_domain/subdomain/roomName
## So if there are any prefixes in the jid (like jitsi meet, which
## has its participants join a muc at conference.xmpp_domain) then
## list that prefix here so it can be stripped out to generate
## the call url correctly.
#JIBRI_STRIP_DOMAIN_JID=muc
#
## Directory for logs inside Jibri container.
#JIBRI_LOGS_DIR=/config/logs
# Disable HTTPS. This can be useful if TLS connections are going to be handled outside of this setup.
DISABLE_HTTPS=1
# Redirects HTTP traffic to HTTPS. Only works with the standard HTTPS port (443).
ENABLE_HTTP_REDIRECT=0
LOG_LEVEL=info

Ver fichero

@@ -0,0 +1,299 @@
version: '2'
services:
# Frontend
web:
image: jitsi/web
# build: ./web
container_name: jitsi-web
hostname: jitsi-web
extra_hosts:
- "meet.hatthieves.es:172.145.0.101"
- "muc.hatthieves.es:172.145.0.102"
- "internal-muc.hatthieves.es:172.145.0.102"
- "guest.hatthieves.es:172.145.0.102"
- "auth.hatthieves.es:172.145.0.102"
- "xmpp.hatthieves.es:172.145.0.102"
- "hatthieves.es:82.223.3.135"
volumes:
- ./jitsi/web/config/config.js:/config/config.js
- ./jitsi/web/config/interface_config.js:/config/interface_config.js
- ./jitsi/web/watermark.png:/usr/share/jitsi-meet/images/watermark.png
# - ./jitsi/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
- ETHERPAD_URL_BASE
- TZ
networks:
mynet:
ipv4_address: 172.145.0.101
# XMPP server
prosody:
image: jitsi/prosody
# build: ./prosody
container_name: jitsi-prosody
hostname: jitsi-prosody
extra_hosts:
- "meet.hatthieves.es:172.145.0.101"
- "muc.hatthieves.es:172.145.0.102"
- "internal-muc.hatthieves.es:172.145.0.102"
- "guest.hatthieves.es:172.145.0.102"
- "auth.hatthieves.es:172.145.0.102"
- "xmpp.hatthieves.es:172.145.0.102"
- "hatthieves.es:82.223.3.135"
# ports:
# - "5222:5222/tcp"
expose:
- 5222
- 5347
- 5280
volumes:
# - ./jitsi/prosody:/config
- /opt/docker/secure/privkey.pem:/config/certs/auth.hatthieves.es.key:ro
- /opt/docker/secure/fullchain.pem:/config/certs/auth.hatthieves.es.crt:ro
- /opt/docker/secure/privkey.pem:/config/certs/xmpp.hatthieves.es.key:ro
- /opt/docker/secure/fullchain.pem:/config/certs/xmpp.hatthieves.es.crt:ro
# - ./jitsi/prosody/jitsi-meet.cfg.lua:/config/conf.d/jitsi-meet.cfg.lua:ro
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
- XMPP_DOMAIN
- XMPP_AUTH_DOMAIN
- XMPP_GUEST_DOMAIN
- XMPP_MUC_DOMAIN
- XMPP_INTERNAL_MUC_DOMAIN
- XMPP_MODULES
- XMPP_MUC_MODULES
- XMPP_INTERNAL_MUC_MODULES
- JICOFO_COMPONENT_SECRET
- JICOFO_AUTH_USER
- JICOFO_AUTH_PASSWORD
- JVB_AUTH_USER
- JVB_AUTH_PASSWORD
- JIGASI_XMPP_USER
- JIGASI_XMPP_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:
mynet:
ipv4_address: 172.145.0.102
# Focus component
jicofo:
image: jitsi/jicofo
# build: ./jicofo
container_name: jitsi-jicofo
hostname: jitsi-jicofo
extra_hosts:
- "meet.hatthieves.es:172.145.0.101"
- "muc.hatthieves.es:172.145.0.102"
- "internal-muc.hatthieves.es:172.145.0.102"
- "guest.hatthieves.es:172.145.0.102"
- "auth.hatthieves.es:172.145.0.102"
- "xmpp.hatthieves.es:172.145.0.102"
- "hatthieves.es:82.223.3.135"
# volumes:
# - ./jitsi/jicofo/sip-communicator.properties:/config/sip-communicator.properties
# - ./jitsi/prosody/certs/hatthieves.es.crt:/usr/local/share/ca-certificates/auth.hatthieves.es.crt:ro
environment:
- ENABLE_AUTH
- XMPP_DOMAIN
- XMPP_AUTH_DOMAIN
- XMPP_INTERNAL_MUC_DOMAIN
- XMPP_SERVER
- JICOFO_COMPONENT_SECRET
- JICOFO_AUTH_USER
- JICOFO_AUTH_PASSWORD
- JVB_BREWERY_MUC
- JIGASI_BREWERY_MUC
- TZ
depends_on:
- prosody
networks:
mynet:
ipv4_address: 172.145.0.103
# Video bridge
jvb:
image: jitsi/jvb
# build: ./jvb
container_name: jitsi-jvb
hostname: jitsi-jvb
extra_hosts:
- "meet.hatthieves.es:172.145.0.101"
- "muc.hatthieves.es:172.145.0.102"
- "internal-muc.hatthieves.es:172.145.0.102"
- "guest.hatthieves.es:172.145.0.102"
- "auth.hatthieves.es:172.145.0.102"
- "xmpp.hatthieves.es:172.145.0.102"
- "hatthieves.es:82.223.3.135"
ports:
- '${JVB_PORT}:${JVB_PORT}/udp'
- '${JVB_TCP_PORT}:${JVB_TCP_PORT}'
volumes:
- ./jitsi/jvb/sip-communicator.properties:/config/sip-communicator.properties
# - ./jitsi/jvb/config:/etc/jitsi/videobridge/config:ro
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_HOSTNAME
- JVB_TCP_HARVESTER_DISABLED
- JVB_TCP_PORT
- JVB_STUN_SERVERS
- JVB_ENABLE_APIS
- JICOFO_AUTH_USER
- TZ
depends_on:
- prosody
networks:
mynet:
ipv4_address: 172.145.0.104
# SIP gateway (audio)
jigasi:
image: jitsi/jigasi
# build: ./jigasi
container_name: jitsi-jigasi
hostname: jitsi-jigasi
extra_hosts:
- "meet.hatthieves.es:172.145.0.101"
- "muc.hatthieves.es:172.145.0.102"
- "internal-muc.hatthieves.es:172.145.0.102"
- "guest.hatthieves.es:172.145.0.102"
- "xmpp.hatthieves.es:172.145.0.102"
- "auth.hatthieves.es:172.145.0.102"
- "hatthieves.es:82.223.3.135"
ports:
- '${JIGASI_PORT_MIN}-${JIGASI_PORT_MAX}:${JIGASI_PORT_MIN}-${JIGASI_PORT_MAX}/udp'
# volumes:
# - ./jitsi/jigasi/sip-communicator.properties:/config/sip-communicator.properties:ro
# - ./jitsi/transcripts:/tmp/transcripts
environment:
- ENABLE_AUTH
- XMPP_AUTH_DOMAIN
- XMPP_INTERNAL_MUC_DOMAIN
- XMPP_SERVER
- XMPP_DOMAIN
- PUBLIC_URL
- JIGASI_SIP_URI
- JIGASI_SIP_PASSWORD
- JIGASI_SIP_SERVER
- JIGASI_SIP_PORT
- JIGASI_SIP_TRANSPORT
- JIGASI_XMPP_USER
- JIGASI_XMPP_PASSWORD
- JIGASI_BREWERY_MUC
- JIGASI_PORT_MIN
- JIGASI_PORT_MAX
- JIGASI_HEALTH_CHECK_SIP_URI
- JIGASI_HEALTH_CHECK_INTERVAL
- JIGASI_SIP_KEEP_ALIVE_METHOD
- JIGASI_ENABLE_SDES_SRTP
- ENABLE_TRANSCRIPTIONS
- JIGASI_TRANSCRIBER_ADVERTISE_URL
- JIGASI_TRANSCRIBER_RECORD_AUDIO
- JIGASI_TRANSCRIBER_SEND_TXT
- GOOGLE_APPLICATION_CREDENTIALS
- TZ
depends_on:
- prosody
networks:
mynet:
ipv4_address: 172.145.0.105
# jibri:
# image: jitsi/jibri
# build: ./jibri
# container_name: jitsi-jibri
# hostname: jitsi-jibri
# extra_hosts:
# - "meet.hatthieves.es:172.145.0.101"
# - "muc.hatthieves.es:172.145.0.102"
# - "internal-muc.hatthieves.es:172.145.0.102"
# - "guest.hatthieves.es:172.145.0.102"
# - "xmpp.hatthieves.es:172.145.0.102"
# - "auth.hatthieves.es:172.145.0.102"
# - "hatthieves.es:82.223.3.135"
# volumes:
## - ${CONFIG}/jibri:/config
# - /dev/shm:/dev/shm
# cap_add:
# - SYS_ADMIN
# - NET_BIND_SERVICE
# devices:
# - /dev/snd:/dev/snd
# environment:
# - XMPP_AUTH_DOMAIN
# - XMPP_INTERNAL_MUC_DOMAIN
# - XMPP_RECORDER_DOMAIN
# - XMPP_SERVER
# - XMPP_DOMAIN
# - JIBRI_XMPP_USER
# - JIBRI_XMPP_PASSWORD
# - JIBRI_BREWERY_MUC
# - JIBRI_RECORDER_USER
# - JIBRI_RECORDER_PASSWORD
# - JIBRI_RECORDING_DIR
# - JIBRI_FINALIZE_RECORDING_SCRIPT_PATH
# - JIBRI_STRIP_DOMAIN_JID
# - JIBRI_LOGS_DIR
# - DISPLAY=:0
# - TZ
# depends_on:
# - jicofo
# networks:
# mynet:
# ipv4_address: 172.145.0.106
networks:
mynet:
driver: bridge
ipam:
config:
- subnet: 172.145.0.0/24