随笔

Gitlab 集成部署

每次变动文件都要上传上去太麻烦了
直接集成到 Git 上让它自动部署

代码仓库

可以自己部署,但我用docker部署了下,要好多内存
Gitlab 提供私有仓库

编译部署

以前网站是用 Webhook 搞得
这里提供了 gitlab-runner
可以部署在本地 docker 里面

配置 SSH

自动访问需要权限,所以需要配置 SSH

  1. 生成一个无密码到 RSA 密钥
    $ ssh-keygen -t rsa -P ''
  2. 把生成到密钥放到 Gitlab CI / Secret 里面
  3. 上传到服务器
    $ ssh-copy-id user@host
  4. 配置 .gitlab-ci.yml
    before_script:
    - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
    - eval $(ssh-agent -s)
    - ssh-add <(echo "$SSH_PRIVATE_KEY_DEV")
    - mkdir -p ~/.ssh
    - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
    

balabala

发现公司竟然没有监控报警系统的存在...
然后团队大佬纯手工编辑线上文件然后打包部署...
也是难为大家了


过程中测试代码

// 注册 runner
sudo gitlab-runner register \
  --url "http://172.17.0.1:32769/" \
  --registration-token "Rvs1ASCVxiKw1w_yZz9L" \
  --description "docker-runner" \
  --executor "docker" \
  --docker-image node:8

本文链接:https://note.lilonghe.net//post/gitlab-ci.html

-- EOF --