一、安装node和pm2
-
1、下载源码
wget https://nodejs.org/dist/v16.19.1/node-v16.19.1-linux-x64.tar.xz -
2、解压文件
tar xvf node-v16.19.1-linux-x64.tar.xz -
3、进入解压后的文件夹中进行拷贝文件
sudo cp -R * /usr/local/ -
4、检查是否安装成功
node -v npm -v -
5、安装
pm2npm install pm2 -g -
6、检查
pm2是否安装成功pm2 --version
二、PM2启动go程序
-
1、
Mac或者widnow下编译,Linux或者Windows下去执行# linux 下去执行 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go # Windows 下去执行 CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go -
2、
Linux下编译 ,Mac或者Windows下去执行# Mac 下去执行 CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go # Windows 下执行 CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go -
3、直接启动
pm2 start 打包后的项目名称 # 我目前是window电脑,打包出来的文件名字叫main.exe pm2 start main.exe -
4、如果要传递参数的方式启动(比如启动不同环境的)
pm2 start main.exe -- -envString prod -
5、如果要显示日志输出
pm2 start main.exe -o ./out.log -e ./error.log --log-date-format="YYYY-MM-DD HH:mm Z" -- -envString prod -
6、以下是我一个
go项目中的Makefile文件内容,可以参考runDev: go run main.go -envString dev runProd: go run main.go -envString prod buildLinux: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o im-api main.go buildWin: go build -o im-api.exe main.go startDev: pm2 start im-api.exe -o ./out.log -e ./error.log --log-date-format="YYYY-MM-DD HH:mm Z" startProd: pm2 start im-api.exe -o ./out.log -e ./error.log --log-date-format="YYYY-MM-DD HH:mm Z" -- -envString prod