gitlab-ci尝试 - 自动化部署
gitlab - ci尝试1、Specific Runner自定义ci配置方式1)、需要注意设备参考链接 https://docs.gitlab.com/runner/executors/#selecting-the-executormac、linux系统一般使用 shell,简单2)、安装配置 gitlab-runnerlinux系统,一般使用 二进制文件参考链接 https://docs.gi
gitlab - ci尝试
1、Specific Runner自定义ci配置方式
1)、需要注意设备
参考链接 https://docs.gitlab.com/runner/executors/#selecting-the-executor
mac、linux系统一般使用 shell,简单
2)、安装配置 gitlab-runner
linux系统,一般使用 二进制文件
参考链接 https://docs.gitlab.com/runner/install/linux-manually.html#help-and-feedback
- 项目代码通过gitlab上传服务器的话最好在部署服务的机器上,安装,
# Linux x86-64
sudo curl -L --output /usr/local/bin/gitlab-runner "https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64"
这里下载会很慢,需要开墙,建议开墙复制链接下载到本地,再上传到服务器
附带windows, 本地文件上传到服务器命令
scp -r localfile.txt root@192.168.0.0:/home/username/
1)scp是命令,-r是参数
2)localfile.txt 是文件的路径和文件名
3)username是服务器账号
4)192.168.0.1是要上传的服务器ip地址
5)/home/username/是要拷入的文件夹路径
- 授予它执行权限
sudo chmod +x /usr/local/bin/gitlab-runner
- 创建 GitLab CI 用户(这里注意,这里是注册服务器使用用户,这个用户需要链接gitlab账号,如果有现成账号可以用,这里不用注册,直接到下一步);
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
- 为用户安装
sudo gitlab-runner install --user=youname --working-directory=/home/youname
youname为账户名字
- 服务运行
sudo gitlab-runner start
输出一下信息就说明成功了
- 注册项目
sudo gitlab-runner register
有问题时可反相操作
# 相反操作 注销所有项目
sudo gitlab-runner unregister --all-runners
然后写入相应的token,url和tag等相关信息,就好了
上面要求输入的Runner绑定的token和url, 获取方式如下
展示图片参考链接 https://zhuanlan.zhihu.com/p/184936276
- 如果为激活,需要运行:激活ci
sudo gitlab-runner verify
- 完成后,重启一下
sudo gitlab-runner restart
之后gitlab-runner就配置好了
2、.gitlab-ci.yml 文件编写
.gitlab-ci.yml文件直接放在项目根目录即可
文件编写
stages: # 分段
- install
- eslint
- build
- deploy
install-job:
tags:
- xxxxx
stage: install
only:
- master
script:
- cd /home/webwork/us
- git pull
- npm install --registry=https://registry.npm.taobao.org
eslint-job:
tags:
- xxxxx
stage: eslint
only:
- master
script:
- cd /home/webwork/us
- npm run lint
build-job:
tags:
- xxxxx
stage: build
only:
- master
script:
- cd /home/webwork/us
- npm run build
deploy-job:
tags:
- xxxxx
stage: deploy
only:
- master
script:
- cd /home/webwork/us
- pm2 restart all
整体操作就是,服务器上,获取最新代码,打包,重新发布。
另附:
服务器无密码登录,可以添加本地用户公钥,具体可参考
服务器秘钥生成
参考网址: https://blog.csdn.net/liu_qingbo/article/details/78383892
进入远程服务器编写
参考网址:https://blog.csdn.net/sn3009/article/details/52779642
更多推荐
所有评论(0)