[ Server ][ Linux ] centos7 Gitlab-CI를 이용한 자동 배포 환경 만들기 > linux

본문 바로가기
사이트 내 전체검색

linux

[ Server ][ Linux ] centos7 Gitlab-CI를 이용한 자동 배포 환경 만들기

페이지 정보

작성자 웹지기 댓글 0건 조회 11,568회 작성일 19-08-08 11:49

본문

Gitlab-CI 기능을 활용 - branch commit시 자동배포

 

Gitlab CI-CD 기능을 사용하려면 gitlab-runner를 설치해야 한다.

Gitlab CE 버젼을 설치하면 자동으로 gitlab-runner가 설치고 계정도 생성되므로 설정만 해주면 된다.

설정은 본 글의 하단부분을 따라하면 된다.

 

※ Gitlab CI 설치

 - Gitlab Repository 추가

# curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash

 

 - Gitlab Runner 최신버젼 설치

# yum install gitlab-runner -y

 ( 특정버전을 설치하고 싶다면 아래 명령 입력)

# yum list gitlab-runner --showduplicates | sort -r

# yum install gitlab-runner-11.10.0 -y

 

 - Gitlab runner 계정생성

# useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash

# gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner

# gitlab-runner start


 - Gitlab Runner 설정

# gitlab-runner register


 - Gitlab의 서버 주소를 입력

# Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com )

# http://192.168.X.X


 - Gitlab CI 에서 발급된 토근 값을 입력한다.

 - 토큰값 확인 방법

   = 해당프로젝트 선택 >> Settings >> CI / CD >> Runners >> Expand 시

    Set up a specific Runner manually의 3번에 token이 있다 이를 복사해서 넣는다

# Please enter the gitlab-ci token for this runner:

# xxxxxx


 - Runner 설명 추가

# Please enter the gitlab-ci description for this runner:

# Deploy Runner


 - Runner 태그 설정(중요 - 태그 종류에 따라 또 달라짐.)

# Please enter the gitlab-ci tags for this runner (comma separated):

# deploy


 - Runner 동작 결정

# Please enter the executor: docker-ssh, ssh, virtualbox, docker, parallels, shell, docker+machine, docker-ssh+machine, kubernetes:

# shell


 - Runner 정상 등록시 Settings >> CI/CD >> Runners settings >> Specific Runners 에서 Runner 등록 확인 가능

 

여기까지 완료가 되었으면 gitlab사이트 또는 본인의 설치 사이트로 이동 후 파일 추가

deploy-to-server:

  stage: deploy

  only:

    - master

  script:

    - echo 'Hello My Site!!!!'

  tags:

    - deploy

  - 추가 부분은 링크2번 차고

위 파일을 만들고 커밋

 

project >> CI/CD >> Pipelines 또는 Jobs 에서 작업 성공 여부 확인

 

추천0 비추천0

댓글목록

등록된 댓글이 없습니다.

Total 103건 1 페이지
  • 102 [ server ][ linux ][ CentOS7 ] nginx 설치 및 방화벽 설정
  • 1) yum 외부저장소에 nginx 추가(nginx 관련사항이 없으니 추가해줘야 함) >> vi /etc/yum.repos.d/nginx.repo nginx.repo 파일 내용( CentOS7 기준 - 버젼별로 다를 수 있으니 다른버젼은 공식사이트 이용 ) [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1 2) nginx ...
  • 웹지기 02-04 5705 0 0 댓글 0
  • 101 [ server ][ linux ] cmd 이용 shell 접속 ( cmd ssh )방법 ( 윈도우에서 cm…
  • 쉘접속 프로그램이 있으면 좋은데, cmd에서 그냥 접속하고 싶다면, 윈도우라면 cmd를 이용해서 접속을 하면 되고, 리눅스라면 cmd라인에서 바로 명령을 입력하면 된다. # telnet 192.168.0.1 { port } 일반적으로 이런식으로 접속을 하면 된다. ssh로 접속을 하고 싶다면 # ssh -p { port } { 계정 }@192.168.0.1 이런식으로 접속을 하면 된다.
  • 웹지기 06-08 10859 0 0 댓글 0
  • 100 [ server ][ linux ][ gitlab ] 원격 저장소 url 변경
  • # git remote -v # origin http://gitlab.com/sample/sample.git (fetch) # origin http://gitlab.com/sample/sample.git (push) 확인을 해본 다음 다음의 명령어로 변경이 가능하다 # git remote set-url origin ssh://git@gitlab.com/sample/sample.git 다시 확인을 해보면 # git remo...
  • 웹지기 06-01 8079 0 0 댓글 0
  • 99 [ server ][ linux ] CentOS7 certbot certificates 오류 ttribute…
  • # certbot certificates 이런명령을 내렸는데 오류가 발생햇다 yum update하면서 무언가 문제가 발생한것 같다. An unexpected error occurred: AttributeError: 'module' object has no attribute 'TLSSNI01' Please see the logfile '/tmp/tmpV1KtqF/log' for more details. # yum update pyth...
  • 웹지기 03-12 7699 0 0 댓글 0
  • 96 [ Server ][ Linux ] CentOS7 firewall ( 방화벽 ) 관리
  • 방화벽 실행 여부 확인 # firewall-cmd --state #running 방화벽 다시 로드 # firewall-cmd --reload #success 존 ( zone ) 목록 출력 # firewall-cmd --get-zones #block dmz drop external home internal public trusted work 존 ( zone ) 기본존을 출력 # firewall...
  • 웹지기 12-24 6978 0 0 댓글 0
  • 95 [ Server ][ Linux ] CentOS7 라우팅 설정 ( vpn 연결 )
  • 장비의 구조도는 위와 같은 장비의 구조에서 한개의 회선은 기본인터넷(eno1)을 연결하는 회선이고 다른하나의 회선은 vpn연결(eno2)을 위한 회선이다 이러한 경우 default를 하나로 설정하고 다른 하나는 route를 통해 vpn회선을 연결한다. eno1번의 랜설정은 default로 설정되며 다음처럼 설정 ip 192.168.0.2 prefix 24 gw 192.168.0.1 eno2번의 랜설정은 ip 192.168.10.2 p...
  • 웹지기 12-18 6662 0 0 댓글 0
  • 94 [ Server ][ Linux ] CentOS7 네트워크 설정
  • 네트워크에 관련된 파일이 있는 곳으로 가서 확인해본다. # cd /etc/sysconfig/network-scripts # ll 현재 설정을 확인 할 수 있다. # route # ip address # netstat 네트워크 재시작 service network restart
  • 웹지기 12-17 5229 0 0 댓글 0
  • 93 [ Server ][ Linux ] CentOS7 telnet 설치 및 테스트
  • 설치 확인 # telnet #bash: telnet: command not found 이렇게 뜨면 텔넷이 설치가 안되어 있는 것이다. 설치해 주자 # yum -y install telnet # ....................................... #Installed: #telnet.x86_64 1:0.17-64.el7 #Complete! 정상 설치 되면 위처럼 뜬다. 실행해 보자 ...
  • 웹지기 12-17 9479 0 0 댓글 0
  • 92 [ Server ][ Linux ] CentOS7 콘쉘 ( ksh ) 설치
  • 현재 사용할 수 있는 쉘을 확인 chsh -l 명령을 통해 현재 사용가능한 쉘 목록 확인 # chsh -l #/bin/sh #/bin/bash #/usr/bin/sh #/usr/bin/bash 콘쉘 ( ksh )를 설치 #yum -y install ksh 사용할 수 있는 쉘을 다시 확인 # chsh -l #/bin/sh #/bin/bash #/usr/bin/sh #/usr/bin...
  • 웹지기 12-16 7112 0 0 댓글 0
  • 91 [ Server ][ Linux ] Gitlab 서버 도메인 변경
  • gitlab 서버의 도메인을 변경하고 싶다면 일단 검색을 한다. # find / -name gitlab.yml # /var/opt/gitlab/gitlab-rails/etc/gitlab.yml # /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml 이런 리스트에서 다음 파일에서 변경을 해준다. # vim /var/opt/gitlab/gitlab-rails/etc/gitlab.yml ...
  • 웹지기 12-12 8054 0 0 댓글 0
  • 90 [ Server ][ Linux ] CentOS7 Let's Encrypt 무료 SSL 인증서 와일드카드로 …
  • 입력시 일반 도메인(domain.com)과 와일드카드(*.domain.com) 도메인 두번 적는다 # certbot certonly --manual --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory -d domain.com -d *.domain.com 이메일을 입력하라는 문구가 나오면 인증서 알림을 받을 이메일을 입력한다. # Saving debug log t...
  • 웹지기 12-12 5157 1 0 댓글 1
  • 89 [ Server ][ Linux ] CentOS7 htmlspecialchars 사용설정
  • htmlspecialchars 함수를 사용하기 위해서는 다음의 ini설정을 변경해 주어야 한다. php.ini filter.default, filter.default_flags 설정 AAI 멀티 버젼 같은 경우 각각의 PHP버젼별로 php.ini파일이 다르므로 검색을 해서 위치를 찾는다 # find / -name php.ini # /etc/opt/remi/php70/php.ini # /etc/opt/remi/php71/php.ini # /etc/opt/rem...
  • 웹지기 12-03 4845 0 0 댓글 0
게시물 검색

회원로그인

접속자집계

오늘
1,758
어제
6,915
최대
33,828
전체
8,106,452

그누보드5
Copyright © funyphp.com. All rights reserved.