找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 677|回复: 5

如何自建一个台服 Docker 版

 火... [复制链接]

335

主题

2072

回帖

7646

积分

管理员

积分
7646
发表于 2024-5-12 00:03:28 | 显示全部楼层 |阅读模式
1、安装 vmware 自行百度。
2、为虚拟机安装系统,centos 7 、ubuntu 随意
3、安装docker



以下虚拟机系统均为Centos 7
3.1、安装 yum-utils
yum -y install yum-utils device-mapper-persistent-datalvm2
3.2、设置docker 镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.3、安装 docker
yum makecache fast && yum install docker-ce docker-ce-cli containerd.io
3.4、启动docker
systemctl status docker
3.5、设置docker开机启动
systemctl enable docker
4、拉取台服镜像
docker pull 1995chen/dnf:centos7-2.1.3
5、启动镜像
5.1、创建外部挂载目录
mkdir -p /data/log /data/mysql /data/data
5.2、启动镜像
docker run -d \
-e PUBLIC_IP=x.x.x.x -e WEB_USER=root -e WEB_PASS=123456 -e DNF_DB_ROOT_PASSWORD=88888888 -e GM_ACCOUNT=gmuser -e GM_PASSWORD=gmpass \
-v /data/log:/home/neople/game/log -v /data/mysql:/var/lib/mysql -v /data/data:/data \
-p 2000:180 -p 3000:3306/tcp -p 7600:7600/tcp -p 881:881/tcp -p 7001:7001/tcp -p 7001:7001/udp -p 10011:10011/tcp -p 11011:11011/udp -p 10052:10052/tcp -p 11052:11052/udp -p 7200:7200/tcp -p 7200:7200/udp -p 2311-2313:2311-2313/udp \
--privileged=true --cap-add=NET_ADMIN --hostname=dnf --cpus=1 --memory=1g --memory-swap=-1 --shm-size=8g --name=dnf 1995chen/dnf:centos5-2.1.3
# PUBLIC_IP为公网IP地址,如果在局域网部署则用局域网IP地址,按实际需要替换
# GM_ACCOUNT为登录器用户名,建议替换
# GM_PASSWORD为登录器密码,建议替换
# DNF_DB_ROOT_PASSWORD为mysql root密码,容器启动是root密码会跟随该环境变量的变化自动更新
# WEB_USER为supervisor web管理页面用户名
# WEB_PASS为supervisor web管理页面密码(可以访问PUBLIC_IP:2000来访问进程管理页面)
# --cpus=1 --memory=1g --memory-swap=-1 --shm-size=8g 根据自己的虚拟机或服务器配置决定





启动完成后:可以通过 docker ps 查看容器运行状态
查看日志 docker logs -f 容器ID 或 容器名
建议 虚拟机的 网络使用桥接模式,独立IP,
关于网络不通的处理方法:
启动成功后 在使用 非虚拟机环境使用打开dos 命令行 输入 ping 虚拟机ip
如果通 重新打开一个 dos 命令行 输入telnt 虚拟机ip+空格+7600 查看网关端口是否通
如果不通 打开vmware 找到虚拟机 右键 设置》硬件》网络适配器》网络连接 确定是否使用的桥接模式(不建议使用NAT模式 可能会与主机端口有冲突)。
如果不是 关闭虚拟机 修改为 桥接模式 再次启动。
启动后如果能ping通 不能telnet 可能是虚拟机防火墙的问题:
最简单的方法关闭防火墙:systemctl stop firewalld;
不想关闭添加防火墙规则:firewall-cmd --zone=public --add-port=881/tcp --permanent && firewall-cmd --reload
需要开通端口: 881、7600、7001、7200、10011
查看防火墙规则:firewall-cmd --list-ports
再次使用telnet 命令 依次查看这几个端口是否通了
开启 lnet 命令:
控制面板》程序》启用或关闭windows功能 找到telnet客户端 勾选 确定。
游客,如果您要查看本帖隐藏内容请回复


回复

使用道具 举报

0

主题

145

回帖

432

积分

炉火纯青

积分
432
发表于 2024-5-12 00:03:41 | 显示全部楼层
回复

使用道具 举报

2

主题

141

回帖

428

积分

炉火纯青

积分
428
发表于 2024-5-12 00:03:53 | 显示全部楼层
回复

使用道具 举报

0

主题

111

回帖

330

积分

炉火纯青

积分
330
发表于 2024-5-12 00:04:06 | 显示全部楼层
回复

使用道具 举报

0

主题

116

回帖

345

积分

炉火纯青

积分
345
发表于 2024-5-12 00:04:40 | 显示全部楼层
回复

使用道具 举报

4

主题

140

回帖

394

积分

炉火纯青

积分
394
发表于 2024-5-12 00:05:10 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表