docker+nginx持续集成
kingcwt2023-05-30前端docker nginx 持续集成
1. 在服务器上新建文件夹
mkdir /usr/projects
2. 在服务器上生成共钥并添加github
# ssh-keygen 生成共钥的意思
# -t ed25519 指rsa算法
# -b 4096 指4096字节
# -C 指你的邮箱
ssh-keygen -t ed25519 -C "your_email@example.com"
cat /root/.ssh/id_ed25519.pub
3. git clone 相关项目
4. 安装nvm
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
5. 执行脚本
. /root/.bashrc
6. 安装node稳定版本
nvm install stable
7. 下载nrm安装源
npm install nrm -g
8. 安装yum-utils工具包
# device-mapper-persistent-data和lvm2是储存设备映射
yum install yum-utils device-mapper-persistent-data lvm2
9. 安装docker
# ce 社区版本
# 添加docker ce仓库的配置 添加Docker的yum存储库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装containerd.io 容器运行时的RPM包
yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
# 安装docker
yum install -y docker-ce
10. 阿里云加速
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<- 'EOF'
{
"registry-mirrors": ["https://fwvjnv59.mirror.aliyuncs.com"]
}
EOF
# 重载所有修改过的配置未文件
systemctl daemon-reload
systemctl restart docker
11. 配置淘宝源
npm config set registry 'https://registry.npm.taobao.org'
npm run serve
12. 在github后端项目上设置webhooks
# 前端项目和后端项目都配置一下webhooks
Payload URL
http://你的服务器公网ip/webhok
Content type
application/json
# 设置你的密钥
Secret
123456
13. 安装 pm2
# 可以在后台启动你的服务
npm install pm2 -g
14. 在webhook项目配置命令
"start": "pm2 start ./webhook.js --name webhook --watch",
"stop":"pm2 stop webhook"
15. 配置git快捷命令
vi ~/gitconfig
[alias]
a = add -A
c = commit -m"msg"
p = push origin master
pu = pull origin master
16. 在webhook项目编写sh脚本 前后端新增Dockerfile文件
17. 安装nginx
yum install nginx -y
相关命令
- centeOS服务器下更新操作系统
# 升级所有的包的同时也会升级软件和系统内核
yum update
- 服务器上安装git
yum install git -y
- pm2
# 查看日期
pm2 logs
# 清除日志
pm2 flush