Django的Moba游戏
配置docker、git环境、创建项目
配置登陆
云服务器 ip<font style="color:rgb(0, 0, 0);">47.108.166.13 </font>
查看配置好 docker 没<font style="color:rgb(0, 0, 0);">docker --version</font>
生成 ssh 登陆密钥<font style="color:rgb(0, 0, 0);">ssh-keygen </font>
进入 ssh 目录cd ~/.ssh
配置别名vim config
(这里配置了 Django 的登陆端口是 20001,等会需要将 docker 容器的 22 端口映射到 aliyun 的 20000 端口)
(然后就可以通过别名,ssh 免密直连 docker)
这里设置:是登陆到新建的用户 godice,而不是 root
1 | adduser godice |
配置免密登陆ssh-copy-id aliyun
一路回车
镜像配置
现在需要上传 docker 镜像到云服务器、并做好端口映射
(这里只是上传一个包含了祖传配置文件的镜像,也可以自己配置,问题不大)
拷贝镜像到云服务器
1 | cd /var/lib/acwing/docker/images |
查看已导入的镜像docker images
查看运行的镜像docker ps -a
这里是我 spring 服务器的镜像
停止运行的镜像docker stop docker_lesson
删除镜像(需要先停止才能删除)docker rmi 镜像ID
注意:一个镜像可以对应多个 tag,镜像 id 才是唯一标识符,可以把一个镜像对应的 tag 删除很多
1 | docker rmi django_lesson:1.0 |
导入镜像docker load -i django_game.tar
查看镜像docker images
对导入的镜像进行重命名docker tag django_lesson:1.0 django_game:v1.0
删除旧镜像的tagdocker rmi django_lesson:1.0
启动镜像docker run -p 20001:22 -p 8000:8000 --name django_game_server -itd django_game:v1.0
(这里把镜像中的 22、8000 端口映射到了本地的 20001、8000 端口)
进入容器docker attach django_game_server
添加新用户useradd godice
添加权限usermod -aG sudo godice
- 注意:
control+d
会直接关闭容器control+p
然后control+q
才是挂起容器
去 aliyun 管理规则开启对应端口:20001 和 8000
首先测试在云服务器是否可以连接本地的 20001(通过他映射到 django_game_server 的 22)
1 | ssh godice@localhost -p 20001然后输入密码 |
logout 两次回到了本地的终端
之前已经设置了登陆别名ssh django_game
拷贝祖传配置到服务器镜像scp .bashrc .vimrc .tmux.conf django_game:
- 注意:把一镜像已经生成了容器是无法在里面给他新增加端口的
- 1:把容器 commit 为镜像
- 2:用该镜像生成一个新的容器
目前的别名登陆配置如下
git 换绑定
(我这里记录的是另一个 git 项目的换仓库绑定,可以跳过看下一个)
进行 github 项目地址绑定
1 | echo "# SnakeAI-BattleArena" >> README.md |
git 仓库初始化
项目文件夹下初始化 git 仓库git init
把本地公钥复制后存入 github 仓库
测试 git 是否连接成功ssh -T git@github.com