一、 👋 前序工作
-
连接服务器
-
获取宝塔面板信息
在命令行输入sudo /etc/init.d/bt default
-
进入宝塔面板输入账号密码
通过上面网址进入宝塔
安装自己需要的东西
**PS:**这里还需要自己登录宝塔账号,没有账号的同学需要注册一下 -
安装pm2管理器 (使用docker部署的话不需要使用pm2)
PM2 是一个守护进程管理工具,帮助您管理和守护您的应用程序。它以简单直观的 CLI 命令行方式进行工作。
文档地址: https://pm2.fenxianglu.cn/docs/start/
**PS:**上面的Nodejs管理器与PM2管理器互斥,只能下载一个⚠️⚠️⚠️ 可能遇到安装失败,我通过更新宝塔解决了这个问题
二、🚗 开始部署
-
连接终端、克隆项目
首先打开SSH密钥连接,不然无法进入终端
-
拉取我们的项目
-
安装依赖
npm
如果找不到npm命令,去pm2管理器确认一下node的版本
三、😎 配置docker
在项目中添加dockerfile
FROM node:14
# 设置工作目录
WORKDIR /usr/src/app
# 将项目文件复制到工作目录
COPY . .
# 暴露应用程序运行的端口
EXPOSE 3000
# 运行 npm run dev 命令
CMD yarn start:dev
docker build -t server .
之后我们运行我们的容器即可
# 3000:3000 意思是 本机端口:docker端口
docker run -p 3000:3000 server
💥💥💥重点踩坑
大家在过程中出现连不上数据库的情况,是因为在docker中访问不到本机主机loaclhost或者127.0.0.1,我们需要在docker中创建mysql之后,映射到主机端口,根据ip地址连接。
过程中可能有些情况我描述不是很清楚,大家遇到什么问题请在评论区留言,我也很想帮大家解决问题😁😁😁