How to deploy Jisti Server with docker-compose
Install jisti Server
- git clone latest version
git clone https://github.com/jitsi/docker-jitsi-meet && cd docker-jitsi-meet
cp env.example .env
- Generate security password
./gen-passwords.sh
#mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody,jicofo,jvb}
mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri}
Modify .env
- copy
env.example
to .env
.
- Modify key and value as followed.
CONFIG=~/.jitsi-meet-cfg
# Exposed HTTP port
HTTP_PORT=80
# Exposed HTTPS port
HTTPS_PORT=443
# System time zone
TZ=Asia/Shanghai
# Public URL for the web service
PUBLIC_URL=https://meet.mydomain.com
#
# Let's Encrypt configuration
#
# Enable Let's Encrypt certificate generation
ENABLE_LETSENCRYPT=1
# Domain for which to generate the certificate
LETSENCRYPT_DOMAIN=meet.mydomain.com
# E-Mail for receiving important account notifications (mandatory)
LETSENCRYPT_EMAIL=myname@mydomain.com
# Enable authentication
ENABLE_AUTH=1
# Enable guest access
ENABLE_GUESTS=1
# Select authentication type: internal, jwt or ldap
AUTH_TYPE=internal
# Redirect HTTP traffic to HTTPS
# Necessary for Let's Encrypt, relies on standard HTTPS port (443)
ENABLE_HTTP_REDIRECT=1
Add Users for internal auth
docker exec -it docker-jitsi-meet_prosody_1 bash
# create a user `user1`
prosodyctl --config /config/prosody.cfg.lua register user1 meet.jitsi
Run it
Backup
#for configure folder
~/.jitsi-meet-cfg
# for letencryption folder
~/.jitsi-meet-cfg/web/letsencrypt
# for configure
./.env
Firewall Setup
apt install ufw
ufw status
ufw default deny
ufw allow 22
ufw allow 443
ufw allow 80
ufw allow 10000/udp
ufw allow 4443
ufw enable
ufw status
Reference