Docker部署信息发布系统实战:内网环境从零搭建
·
在政企单位、医院、学校等内网隔离环境中,纯云端的信息发布系统无法使用。本文介绍如何用Docker在内网服务器上从零部署一套完整的信息发布系统,实现不依赖公网的本地化管理。
一、部署架构
┌─────────────────────────────────────┐
│ 内网局域网 │
│ │
│ ┌──────────┐ ┌───────────────┐ │
│ │ 管理端APP │◄──►│ Docker服务器 │ │
│ │ (Windows) │ │ (端口 9393) │ │
│ └──────────┘ └───────┬───────┘ │
│ │ │
│ ┌────────────────┼──────┐ │
│ ▼ ▼ ▼ │
│ ┌────────┐ ┌────────┐ ┌────┐│
│ │显示端1 │ │显示端2 │ │... ││
│ │(Android)│ │(Windows)│ │ ││
│ └────────┘ └────────┘ └────┘│
│ │
└─────────────────────────────────────┘
二、环境准备
# 服务器要求
OS: Linux (Ubuntu 20.04+ / CentOS 7+ / Debian 10+)
Docker: 20.10+
内存: 2GB+
存储: 20GB+ (取决于素材量)
网络: 与显示设备同一局域网
# 客户端
显示端: Android电视/机顶盒 或 Windows电脑
管理端: Windows电脑 (需安装APP版管理端,Web版不支持私有部署)
三、Docker部署步骤
1. 安装Docker
# Ubuntu/Debian
curl -fsSL https://get.docker.com | sh
systemctl enable docker
systemctl start docker
# 验证
docker --version
2. 启动服务
# 拉取并启动容器
docker run -d \
--name my-cxserver \
-p 9393:9393 \
-v $(pwd)/data:/app/mhtdata \
--restart unless-stopped \
<镜像名>
参数说明:
-d:后台运行-p 9393:9393:映射服务端口-v:挂载数据目录,容器重建后数据不丢失--restart unless-stopped:开机自启
3. 验证服务
# 检查容器状态
docker ps | grep my-cxserver
# 检查端口监听
netstat -tlnp | grep 9393
# 测试HTTP服务
curl http://127.0.0.1:9393
4. 配置防火墙
# 开放内网端口
# Ubuntu (ufw)
ufw allow 9393/tcp
# CentOS (firewalld)
firewall-cmd --permanent --add-port=9393/tcp
firewall-cmd --reload
四、显示端配置
Android设备
- 在Android电视/机顶盒上安装显示端APP
- 打开APP,进入网络配置
- 输入Docker服务器的内网IP地址(如
http://192.168.1.100:9393) - 确认连接成功,获取设备动态码
Windows设备
- 安装Windows版显示端
- 在设置中配置服务器地址
- 连接成功后获取动态码
五、管理端配置
私有部署必须使用APP版管理端(不能用Web版):
- 在Windows电脑上安装管理端APP
- 打开管理端,切换到"本地管理"标签
- 开启本地管理服务
- 在设备列表中绑定显示端(输入动态码)
- 创建节目并投放
六、常见问题
Q: Docker容器启动后端口不通?
# 检查容器日志
docker logs my-cxserver
# 检查端口绑定
docker port my-cxserver
Q: 显示端连不上服务器?
- 确认显示端和服务器在同一局域网
- 确认服务器IP地址正确
- 检查防火墙是否放行9393端口
- 如果服务器有多网卡,确认显示端访问的是正确网段的IP
Q: 数据如何备份?
# 备份数据目录
docker stop my-cxserver
cp -r $(pwd)/data $(pwd)/data_backup
docker start my-cxserver
Q: 如何升级?
docker stop my-cxserver
docker rm my-cxserver
docker pull <新镜像名>
docker run -d --name my-cxserver -p 9393:9393 -v $(pwd)/data:/app/mhtdata --restart unless-stopped <新镜像名>
七、总结
Docker部署信息发布系统的核心就一条命令,但要注意:私有部署必须用APP版管理端,数据目录要挂载到宿主机,防火墙要放行端口。部署完成后,所有数据在内网流转,不依赖任何外部服务。
更多推荐
所有评论(0)