使用字节跳动的Trae Solo CN编写了一个两个参与者的博弈类小游戏,该游戏使用 nodejs 加 expressjs 加 socket.io 实现。开发完毕后,将该应用部署到互联网,记录一下部署过程。
申请云主机
选择阿里云免费申请一个云主机,使用ubuntu 22.04操作系统,默认安装docker服务。
上传应用
远程登录阿里云主机,上传nodejs应用。
部署应用
因为需要在Docker中运行 npm install 构建 nodejs 应用部署环境,因此无法直接使用默认的 nodejs 镜像,需要自定义 nodejs 镜像。
创建一个高效的 Dockerfile
在项目的根目录下,创建一个名为Dockerfile的文件,并写入以下内容:
1 | # 选择一个基础镜像,比如 Node.js 20 |
构建与运行
- 构建镜像
在包含上述Dockerfile的目录下,运行以下命令来构建镜像:
1 | # 构建镜像 |
- 运行容器
构建成功后,使用docker run命令启动容器,并将宿主机的端口映射到容器内的端口:
1 | # 后台运行docker镜像 |
远程访问
在阿里云主机的管理界面上,设置防火墙,允许外部主机访问云主机的web服务端口。
打开浏览器,输入网址访问 http://ip ,其中ip为云主机的公网ip 。
参考链接
- Docker使用帮助,by huangwang.