准备:
安装ubuntu 18.04 server版本
安装过程注意事项:
1、开启openssl,才可以远程通过SSH管理。
2、安装过程要选择阿里云镜像地址,否则国外极慢,替换地址如下:
http://mirrors.aliyun.com/ubuntu/
参考文章:文章写的简单明了,但有两个问题,本文已修正
引用文章
一、安装docker
#切换到root,
sudo su
#更新源到最新
apt-get update
#安装docker
apt-get install docker docker-compose -y
#启动docker
systemctl start docker
#开机启动docker
systemctl enable docker
#查看docker版本
docker version
#/etc/docker/daemon.json添加国内镜像地址加速,方法如下:
/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://9uxjn0e3.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
#修改完地址后重启docker
systemctl restart docker
#查看是否配置成功Registry Mirrors
docker info
二、安装docker-jitsi-meet镜像
#安装git
apt-get install git
#切换在root目录下
cd /root
#clone仓库代码
git clone https://github.com/jitsi/docker-jitsi-meet && cd docker-jitsi-meet
#复制配置样例文件并设置环境参数,
cp env.example .env
vim .env
我的修改文件如下 :
#
# Basic configuration options
#
# Directory where all configuration will be stored
CONFIG=~/.jitsi-meet-cfg
# Exposed HTTP port 默认
HTTP_PORT=8000
# Exposed HTTPS port默认
HTTPS_PORT=8443
# System time zone时区
TZ=Asia/Shanghai
# Public URL for the web service公网地址
PUBLIC_URL=https://XXX.XXX.XXX
# IP address of the Docker host Docker NAT后的内网地址
# See the "Running behind NAT or on a LAN environment" section in the README
DOCKER_HOST_ADDRESS=192.168.81.2
# Control whether the lobby feature should be enabled or not
#ENABLE_LOBBY=1
#
# Let's Encrypt configuration
#
# Enable Let's Encrypt certificate generation
#ENABLE_LETSENCRYPT=1
# Domain for which to generate the certificate 证书域名
LETSENCRYPT_DOMAIN=XXX.XXX.XXX
# E-Mail for receiving important account notifications (mandatory)
#[email protected]
开启验证模式,关闭匿名
# Enable authentication
ENABLE_AUTH=1
# Enable guest access
ENABLE_GUESTS=1
# Select authentication type: internal, jwt or ldap
AUTH_TYPE=internal
#更多参数说明查看https://github.com/jitsi/docker-jitsi-meet/blob/master/README.md
这里有个命令漏掉了,作用是通过脚本设置配置文件强密码,折腾好久才解决命令如下,
./gen-passwords.sh
创建必须的目录,注音,如果本文开头已经切换到root账户下,因此这里创建的目标是在:/root目录下,
mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri}
#安装镜像,后面没有那个点
docker-compose up -d
#查看端口
netstat -naop
#浏览器打开查看webUI
https://你的域名:8443 (or http://你的域名:8000 for HTTP).
三、配置SSL证书
建议使用阿里云或腾讯云的免费SSL证书,1年免费
我处理的方式是,在阿里去申请后,下载证书解压后有两个文件,如下,拷贝到
/root/.jitsi-meet-cfg/web/keys目录下,文件如下:
meet.key meet.pem
编辑/root/.jitsi-meet-cfg/web/nginx/ssl.conf,配置如下:
# ssl certs
ssl_certificate /config/keys/meet.pem;
ssl_certificate_key /config/keys/meet.key;
也可以如下操作:
#将证书复制到web容器内,使用docker ps命令查看CONTAINER_ID和NAMES
docker cp ./xxx.crt dockerjitsimeet_web_1:/config/keys/
docker cp ./xxx.key dockerjitsimeet_web_1:/config/keys/
#查看SSL相关配置文件
cat /config/nginx/ssl.conf
#查看nginx相关配置是否正确
nginx -t -c /config/nginx/nginx.conf
#重启docker容器
docker restart dockerjitsimeet_web_1
四、Docker其他命令
#重启所有容器
docker restart $(docker ps -aq)
#停止所有运行的容器
docker stop $(docker ps -aq)
#启动所有运行的容器
docker start $(docker ps -aq)
#设置容器开机启动 //根据容器NAME或者ID设置
docker update --restart=always dockerjitsimeet_web_1
#删除所有容器
docker rm $(docker ps -aq)
#删除所有镜像
docker rmi $(docker images -q)
#从头开始重新创建容器
docker-compose -f docker-compose.yml -f jigasi.yml up -d --force-recreate
自定义项设置方法:
一、修改首页名称,logo连接地址等官方参考文档
修改:
/root/.jitsi-meet-cfg/web/interface_config.js
参考:
#进入容器,可编辑相关文件
docker exec -it dockerjitsimeet_web_1 /bin/bash
#在容器中安装vim 进行编辑
apt-get update
apt-get install -y vim
修改 interface_config.js
#修改名称
APP_NAME: 'Jitsi Meet',
NATIVE_APP_NAME: 'Jitsi Meet',
PROVIDER_NAME: 'Jitsi',
#修改logo连接
JITSI_WATERMARK_LINK: 'http://XXX.XXX.XXX',
二、修改logo图片,官方参考文档
docker cp ./watermark.png dockerjitsimeet_web_1:/usr/share/jitsi-meet/images/
总之,参考官方文档才最靠谱,地址如下:
https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-docker
NAT环境安装
开放和映射以下端口,其实8000或80端口不用开放
1、在ubuntu防火墙中开主知下端口
$ sudo firewall-cmd --permanent --add-port=8000/tcp
$ sudo firewall-cmd --permanent --add-port=8443/tcp
$ sudo firewall-cmd --permanent --add-port=4443/tcp
$ sudo firewall-cmd --permanent --add-port=10000/udp
$ sudo firewall-cmd --reload
2、在网关映射以上端口
注意.10000端口是UDP