@liruiyi962464
2024-12-12T01:30:22.000000Z
字数 3873
阅读 89
oula
firewall-cmd --zone=public --add-port=9060/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports
ss -tuln
lsof -i:9060
kill -9
netstat -tpln
wget https://sandbox-experiment-files.obs.cn-north-4.myhuaweicloud.com/2417/docker-18.09.9.tgz
tar zxf docker-18.09.9.tgz
mv docker/* /usr/bin
vim /etc/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
5.修改执行权限
chmod +x /etc/systemd/system/docker.service
systemctl start docker #启动
systemctl stop docker #停止
systemctl status docker #状态
systemctl restart docker #重启
systemctl enable docker #开机自启
systemctl disable docker #关闭开机自启
systemctl daemon-reload #守护进程重启
//此处以Apache和CentOS官方镜像为例,由于国内禁止了docker官方镜像源,此处指定华为云官方镜像。
//先修改“/etc/docker/daemon.json”文件(如果没有,可以手动创建)
vim /etc/docker/daemon.json
//在文件内添加以下内容:
{
"registry-mirrors": [ "https://0cf850bb9480f3170f2dc01234ec1ca0.mirror.swr.myhuaweicloud.com" ]
}
docker version
// 删除镜像
docker images
docker rmi [IMAGE]
docker image rm
// 拉取镜像
// 使用以下命令拉取 mpromonet/webrtc-streamer 镜像:
sudo docker pull mpromonet/webrtc-streamer
// 停止
sudo docker stop webrtc-streamer
sudo docker rm webrtc-streamer
sudo systemctl restart docker
// 测试
docker run -p 8000:8000 --name webrtc-streamer -it mpromonet/webrtc-streamer
sudo docker run -d --network=host --name webrtc-streamer --memory 512m --memory-swap 512m mpromonet/webrtc-streamer
sudo docker run -d -p 8000:8000 --name webrtc-streamer mpromonet/webrtc-streamer
// -it 表示使用交互式终端,并分配一个伪终端;--name 指定容器名称为 webrtc-streamer;-p 指定容器内部端口号为 8000,映射到主机的 8000 端口 -d 后台运行。
// 查询日志
sudo docker logs webrtc-streamer
systemctl status firewalld
systemctl disable firewalld.service
systemctl stop firewalld.service
## 关闭SELinux
sed -i '/SELINUX=/d' /etc/selinux/config
echo "SELINUX=disabled" >> /etc/selinux/config
cat /etc/selinux/config|grep -v ^#|grep -v '^$'
使用docker save命令将所需的镜像保存为一个tar文件。例如,要导出mpromonet/webrtc-streamer镜像,可以使用以下命令:
// 外网安装的打包指令
sudo docker save -o webrtc-streamer.tar mpromonet/webrtc-streamer:latest
// 注意:上述命令中的:latest是镜像的标签,如果使用的是其他版本,请替换为相应的标签。
// 在内网环境中加载Docker镜像
// 在内网环境中,使用docker load命令加载从外网环境传输过来的Docker镜像文件。例如:
sudo docker load -i webrtc-streamer.tar
// 使用docker images命令来验证已经成功导入的Docker镜像。例如:
sudo docker images
// 停止
sudo docker stop webrtc-streamer
// 运行Docker容器
sudo docker rm webrtc-streamer
sudo systemctl restart docker
sudo docker run -d -p 13100:8000 --name webrtc-streamer mpromonet/webrtc-streamer
// 其他
sudo docker run -d --network=host 13100:8000 --name webrtc-streamer --memory 512m --memory-swap 512m mpromonet/webrtc-streamer
// -it 表示使用交互式终端,并分配一个伪终端;--name 指定容器名称为 webrtc-streamer;-p 指定容器内部端口号为 8000,映射到主机的 13100 端口 -d 后台运行。--memory 512m:--memory-swap 512m: 限制容器可以使用的内存加交换空间的总和为 512 MB。这意味着容器不能使用交换空间来超出其内存限制。 限制容器可以使用的内存为 512 MB。
// 查询日志
sudo docker logs webrtc-streamer
vim /etc/systemd/system
[Unit]
Description=WebRTC Streamer Service
After=network.target docker.service
Requires=docker.service
[Service]
User=admin # 确保这个用户有权限运行 Docker 命令,或者更改为 root(不推荐)
Type=simple
Restart=on-failure
RestartSec=5s
ExecStart=/bin/sh -c ' \
/usr/bin/docker stop webrtc-streamer || true; \
docker ps -a | grep webrtc-streamer && docker rm -f webrtc-streamer || true; \
docker run -d -p 13100:8000 --name webrtc-streamer mpromonet/webrtc-streamer \
'
[Install]
WantedBy=multi-user.target
// 重新加载 systemd 配置
sudo systemctl daemon-reload
// 启用并启动服务
sudo systemctl enable webrtc-streamer.service
sudo systemctl start webrtc-streamer.service
// 检查服务状态
sudo systemctl status webrtc-streamer.service
// 检查服务状态
journalctl -u webrtc-streamer.service
https://www.zybuluo.com/liruiyi962464/note/2568114