LIGHT CASER 数据可视化编辑器后端基础开源版
- Nestjs 10
- Typeorm 0.3.20
- 开发sqlite3 5.1.7 正式: mysql
- docker 镜像构建
本项目支持前端大屏项目 light-chaser-server
转翻译java后端工程 light-chaser-server
- 目前NestJs工程不需要token验证, 如果需要可以把
app.module.ts
中的全局守卫打开 - 项目由于使用sqlite, 所以不需要连接其他数据库或redis, 装上依赖, 然后直接
npm run dev
即可 - 推送代码自动构建阿里云镜像
- 准备阿里云镜像仓库(免费)和Ecs服务器(收费),阿里云镜像创建库命名为
light-chaser
, 镜像库地址记下,待会用 - fock 项目, 在github的设置中,选择
Secrets and variables
中的Actions
,然后在Secrets
中点击Add repository secret
添加ALIYUN_DOCKER_PASSWORD
,ALIYUN_DOCKER_USERNAME
,SERVER_HOST
,SERVER_SSH_KEY
,SERVER_USERNAME
- 修改
deploy.yml
文件,把自己的阿里镜像地址替换上去, 提交代码, 会触发workflows的deploy.yml
文件 - docker 拉取mysql, 注意把
123456
换成自己的密码,docker run --name my-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql
- 登陆ecs服务器,把guazai整个目录拷贝到root下,重命名为修改/root/nestguazai, 里面的.env.prod文件的数据库账号和密码
- 修改配置, 推送代码, 然后github就会自动构建镜像, 然后把镜像推送到阿里云镜像仓库中
- 把阿里云安全端口 80,8001,3000端口都放开
- 等待流程跑完, 检测服务是否正常
curl -I http://localhost:3000/docs
包含前端, 后端, ngnix
docker pull ghcr.io/kakajun/light-chaser-server-nestjs:32d3cd960ac92b82e0bee2ea4ef0d73c8fb8c23b
- 拉取镜像
docker pull ghcr.io/kakajun/light-chaser-server-nestjs:latest
- 创建目录
mkdir /root/nestguazai
- 创建容器
docker run -d \
-p 8090:80\
-p 3000:3000 \
--restart=always \
--name light-chaser \
-v /root/nestguazai:/app/guazai \
light-chaser-server-nestjs:latest
- 修改/root/nestguazai 里面的数据库密码
- 启动容器
docker restart light-chaser
启动 localhost
镜像包含前端, 后端, ngnix