自托管gitlab自动部署到aws ec2服务器
我这样问是因为我找不到一个与我的案例类似的运行示例。我在AWS EC2机器中有一个自托管Gitlab(我们称之为“机器1”,我想将自动部署设置到AWS EC2远程服务器,称为“机器2”) My Gitlabs安装显示(机器1): gitlab ce 10.4.4 gitlab配置模板10.4.4自托管gitlab自动部署到aws ec2服务器,gitlab,gitlab-ci,gitlab-ci-runner,Gitlab,Gitlab Ci,Gitlab Ci Runner,我这样问是因为我找不到一个与我的案例类似的运行示例。我在AWS EC2机器中有一个自托管Gitlab(我们称之为“机器1”,我想将自动部署设置到AWS EC2远程服务器,称为“机器2”) My Gitlabs安装显示(机器1): gitlab ce 10.4.4 gitlab配置模板10.4.4 gitlab cookbooks 10.4.4 gitlab ctl 10.4.4 gitlab healthcheck gitlab监视器 gitlab页面 gitlab psql gitlab ra
gitlab cookbooks 10.4.4
gitlab ctl 10.4.4
gitlab healthcheck
gitlab监视器
gitlab页面
gitlab psql
gitlab rails
gitlab脚本
gitlab selinux
gitlab外壳
gitlab主力军 我已按照gitlab说明在我的项目中设置gitlab文档上的CI&CD。我想设置自动部署。以下步骤如下: 1.我已经创建了以下gitlabs文档的runner,除了(机器2)之外,这里没有太多要显示的内容: 2.我已经创建了我的.gitlab-ci.yml(在根项目中)文件(即使创建了两个yml文件版本,我也尝试过): yml 2:
stages:
- build
- deploy
build:
stage: build
script: echo "Building the app"
deploy_staging:
stage: deploy
script:
- echo "Deploy to staging server"
yml 1:
#develop stage
deploy:
stage: deploy
before_script:
#generate ssh key
- mkdir -p ~/.ssh
- echo -e "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
- chmod 600 ~/.ssh/id_rsa
script:
- bash .gitlab-deploy.sh
environment:
name: develop
url: https://my.domain.com
when: manual
3.我设置了两个秘密变量
SSH_私钥和DEPLOY_服务器(分别带有密钥和IP)
4.我添加了一个deploy.sh文件(在我的项目根目录中)
我的gitlab runner在今天向我展示:
gitlab runner验证
警告:在用户模式下运行。警告:用户模式要求您手动启动生成处理: 警告:$gitlab runner run
警告:将sudo用于系统模式:
警告:$sudo gitlab runner 正如sudo所说的那样跑步向我的跑步者展示:
Verifying runner... is alive runner=
Verifying runner... is alive runner=
Verifying runner... is alive runner=
但是仍然在gitlabs的ui中有一个“卡住”标签,作业告诉我“作业卡住了,检查跑步者”
问题:
#!/bin/bash
#Get servers list
set -f
string=$DEPLOY_SERVERS
array=(${string//,/ })
#Iterate servers for deploy and pull last commit
for i in "${!array[@]}"do
echo "Deploy project on server ${array[i]}"
ssh ubuntu@${array[i]} "cd /var/www/html/app && git pull origin develop"
done
Verifying runner... is alive runner=
Verifying runner... is alive runner=
Verifying runner... is alive runner=
stages:
- build
- deploy
build:
stage: build
script: echo "Building the app"
deploy_staging:
stage: deploy
script:
- echo "Deploy to staging server"
tags:
- deploy