你问我为什么在cent下安装?完全是因为内存不够了没办法,话不多说我们直接开始
首先你的电脑得有虚拟机和已经安装好后的Centos
然后我们进入到命令界面,直接开始打代码
先安装软件包,保证必要的Docker存储库能在
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
然后我们会发现,欸?怎么安装失败了!???
放心别急,小编已经帮你们找到解决办法了呵呵,也是废了九牛二虎之力。对于这种现象我们可以手动进行配置
命令行输入下面这串代码
sudo vi /etc/yum.repos.d/docker-ce.repo
然后将下面这个串输入到这个文件里,wq保存退出
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://download.docker.com/linux/centos/7/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg
然后我们清理缓存(如果报错,请站内搜索centos7换源教程或咨询AI)
sudo yum clean all
sudo yum makecache
sudo yum update
之后我们就要安装docker啦!中间可能可能因为一些网络问题导致安装失败等等,题主也是试了大概2次或三次才能完全安装完成。多试几次就好
sudo yum install -y docker-ce
网络问题报错233333.......
最后弹出Complete就是成功啦!
之后我们来运行docker
systemctl start docker
systemctl enable docker
弹出这些就是正常现象
接下来我们可以开始准备部署docker容器和拉取docker镜像了,这里折磨题主好久,因为一直拉取失败就是很难受,所以我们要多一些耐心
首先我们拉取codecomebat的镜像(最折磨人的一集)
sudo docker pull operepo/ope-codecombat
不出大家意外肯定会弹有关,Error response from daemon: Get "https://registry-1.docker.io/v2/"的错误,不过没关系,我已经帮大家找到方法了。让我们慢慢来~
输入以下代码
mkdir -p /etc/docker
vi /etc/docker/daemon.json
之后向文件里面输入以下国内加速源
{
"registry-mirrors": ["https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc"]
}
wq保存退出后,重新启动一下docker,刷新一下daemon文件
systemctl daemon-reload
systemctl restart docker
然后我们再去尝试拉取codecomebat这个容器,会发现
欸?怎么还是报错,不行啊!主播主播你是不是在骗人啊?
不是的,事实上本人在拉取的时候也是这样,原因好像是加速源的不稳定,多拉几次就好,当然大家也可以在站内搜索其他加速源来轮流试一下,直接搜Error response from daemon: Get "https://registry-1.docker.io/v2/"报错就好。最后我们要有耐心.......
这就是在拉了。PS:吃运气的,运气好一次就能拉到,运气不好就得拉好几次才行,¯\_(ツ)_/¯
这就是拉取完了,一排下来的complete是不是很爽呢?2333333.....
然后我们新建一个docker容器,并把它映射到3000端口上(name后面可以自定义docker容器的名称,这里方便打楼主就设置成了coke,阿玛提拉斯())
sudo docker run -itd --name coke -p 3000:3000 operepo/ope-codecombat /bin/bash
接下来我们还要去下载这个游戏的转储文件,因为官方已经不受支持了,这里给大家贴一下2022年的版本,新版博主没找到(摊手)
dump.tar.gz官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘
下载之后我们通过xshell推送到系统里,然后我们将他推送到容器中,执行以下代码
docker cp /mnt/hgfs/dump.tar.gz coke:/home/coco/codecombat/data/dump.tar.gz
弹出successfully就是成功了,之后我们进入到容器中(注意,上方的路径看个人的哦)
进入容器
docker exec -it coke /bin/bash
然后,导航到目标目录并解压 dump.tar.gz
文件:
cd /home/coco/codecombat/data
tar -xzvf dump.tar.gz
这样就好了了,接下来的方法就很简单了,运行服务就可以开始玩游戏了,注意,这边需要两个终端同时进行,如果你是有GNU界面的,直接右击桌面新建然后运行即可,如果你跟博主同样都是最小化安装的CentOS,我们要先安装tmux这个小组件
yum install tmux
安装完成后直接输入tmux即可,然后在新开的窗口下我们启动容器的数据库服务,命令如下
sudo docker exec -it coke /bin/bash -c "cd /home/coco/codecombat && ./bin/coco-mongodb"
注意了,然后我们按键盘上的Ctrl+B,在按一次C,你就会发现打开了一个新窗口,然后在执行下方的命令,我们来启动最后的最后,也就是我们的Web服务
sudo docker exec -it coke /bin/bash -c "cd /home/coco && sh start.sh"
最后启动完成后就会成功啦!
我们来到真实机上输入http://<您的主机IP地址>:3000
,即可开始体验 CodeCombat 游戏!!!