Docker
1 前言
一个问题,一篇文章,一出故事。
笔者Unifi-Video想要迁移至docker环境,于是产生此文。
2 最佳实践
2.1 部署Docker集群
如果你尚未部署Docker集群环境,请参阅如下章节部署,
2.2 准备unifi-video镜像
In docker01
docker tag build/unifi-video:3.5.2 docker01.cmdschool.org:5000/unifi-video:3.5.2 docker push docker01.cmdschool.org:5000/unifi-video:3.5.2 docker image rm build/unifi-video:3.5.2
另外,此镜像为自己制作,无法直接从网络上直接载入,详细请参考以下文章,
2.3 部署unifi-video
In docker01
2.3.1 创建服务
docker run -d --privileged=true --name Unifi-Video -p 7080:7080 -p 6666:6666 -p 1935:1935 -p 7440:7440 -p 7443:7443 -p 7445:7445 -p 7446:7446 -p 7447:7447 -p 10001:10001/udp -v unifi-video-mongodb:/var/lib/mongodb -v unifi-video-data:/var/lib/unifi-video docker01.cmdschool.org:5000/unifi-video:3.5.2
由于需要特权模式运行,所以只能用“docker run”的方式部署,以下命令无需提前执行也能自动创建卷,
In docker01
docker volume create unifi-video-data docker volume create unifi-video-mongodb
2.3.2 测试unifi-video服务
In docker01
docker exec -it `docker container ls | grep 'unifi-video' | cut -d" " -f1 ` bash
然后,我们使用如下命令查看服务的端口,
netstat -anp | egrep "unifi-video|evostreamms" | grep "0.0.0.0:"
可见如下显示,
tcp 0 0 127.0.0.1:7081 0.0.0.0:* LISTEN 145/unifi-video tcp 0 0 0.0.0.0:6666 0.0.0.0:* LISTEN 291/evostreamms tcp 0 0 0.0.0.0:1935 0.0.0.0:* LISTEN 291/evostreamms tcp 0 0 0.0.0.0:7440 0.0.0.0:* LISTEN 291/evostreamms tcp 0 0 0.0.0.0:7443 0.0.0.0:* LISTEN 145/unifi-video tcp 0 0 0.0.0.0:7445 0.0.0.0:* LISTEN 291/evostreamms tcp 0 0 0.0.0.0:7446 0.0.0.0:* LISTEN 291/evostreamms tcp 0 0 0.0.0.0:7447 0.0.0.0:* LISTEN 291/evostreamms tcp 0 0 127.0.0.1:1112 0.0.0.0:* LISTEN 291/evostreamms tcp 0 0 0.0.0.0:7080 0.0.0.0:* LISTEN 145/unifi-video udp 0 0 172.17.0.2:55839 0.0.0.0:* 145/unifi-video udp 0 0 0.0.0.0:10001 0.0.0.0:* 145/unifi-video
现在,你可以尝试浏览器访问服务管理控制,
http://docker01.cmdschool.org:7080
注:界面操作过于简单请自行摸索,本章不再详述。
参阅文档
=====================
官方参阅
————
https://hub.docker.com/_/mysql
https://hub.docker.com/_/adminer
文件兼容性参考
————–
https://docs.docker.com/compose/compose-file/
没有评论