안녕하세요 이번글에서는 서버에 GitLab 을 설치한후 클라이언트에 glab을 설치하여 파일 업로드 , 커밋을 이용하여 돌아가기 , 클라이언트에서 서버 접속 테스트를 진행하겠습니다.
-목차-
1. GitLab & glab 개념
2.서버에 Glab 설치
3.클라이언트에 Ghilab 설치 및 테스트
4. 서버 Gitlab https 적용
5. 클라이언트에서 서버 접속
6. 사용 예시
1. GitLab & glab 개념
GitLab: GitLab은 소프트웨어 개발을 위한 통합된 DevOps 플랫폼입니다. Git 저장소 호스팅 및 버전 관리 기능뿐만 아니라 이슈 관리, 코드 리뷰, CI/CD 파이프라인 등 다양한 개발 도구와 기능을 제공합니다. GitLab은 오픈 소스 버전과 호스팅 서비스를 제공하는 클라우드 기반 소프트웨어입니다.
glab: glab은 GitLab 클라이언트 도구입니다. GitLab의 API를 기반으로 하여 CLI(Command Line Interface)를 통해 GitLab의 여러 기능을 명령어로 제어하고 관리할 수 있습니다. glab은 GitLab의 기능을 보다 효율적으로 사용할 수 있도록 돕는 도구입니다.
2.서버에 Glab 설치
[ 테스트 환경 ]
os : ubuntu 22.04 * 2ea (server,client)
apt 업데이트 및 업그레이드
# apt -y update && apt -y upgrade
GitLab 필수 패키지 설치
# apt -y install curl openssh-server ca-certificates tzdata perl
GitLab 패키지 리포지토리를 추가
# curl -L "https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh" | sudo bash
서버와 도메인을 연결해줘야 합니다.
# EXTERNAL_URL="http://kimdm2375.store" apt -y install gitlab-ce
최초 패스워드 확보
# cat /etc/gitlab/initial_root_password |grep Password:
http://kimdm2375.store
ID: root
PASSWD:k06fh0nQQaxOuFoUqEMgaojxRAoveQvMQGSZ2/BlA7I=
웹페이지 접속
http://kimdm2375.store/users/sign_in
초기 패스워드 변경
현재의 패스워드 입력 -> 변경할 패스워드 입력
프로젝트 생성
세부 설정 입력
프로젝트 생성 완료
3.클라이언트에 Ghilab 설치 및 테스트
GLab 설치 파일 다운로드
# wget https://gitlab.com/gitlab-org/cli/-/releases/v1.36.0/downloads/glab_1.36.0_Linux_x86_64.deb
GLab 설치
# dpkg -i glab_1.36.0_Linux_x86_64.deb
GitLab Runner의 최신 버전이 /usr/local/bin/gitlab-runner
파일로 다운로드되어 저장
# curl -L --output /usr/local/bin/gitlab-runner "https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64"
허가권 변경
# chmod 755 /usr/local/bin/gitlab-runner
파일 업로드 git 설치
# apt -y install git
테스트 디렉토리 생성
# mkdir test
테스트 파일 생성
# touch test/hi1 test/hi2 test/hi3 test/hi4
저장소 초기화
# git init -b main
origin 저장소 추가
# git remote add origin http://kimdm2375.store/root/sample.git
Git에서 사용할 이메일 주소를 설정
# git config --global user.email "kimdm2375@naver.com"
Git에서 사용할 사용자 이름을 설정
# git config --global user.name "kimdm2375"
저장소에 기록
# git commit -m "First commit"
origin 원격 저장소에 업로드
# git push -u origin main
업로드 확인
커밋 변경
# rm hi
돌아가고자 하는 커밋 확인
# git log
이전 커밋으로 돌아가기
# git reset --hard 7b4ca6fa513909c327cf76af2c8b451c19e3786b
4. 서버 Gitlab https 적용
letsencrypt 설정 파일 수정
# vi /etc/gitlab/gitlab.rb
(수정) external_url ‘https://kimdm2375.store’ # http -> https 변경 (추가) letsencrypt[‘enable’] = true letsencrypt[‘contact_emails’] = [‘root@kimdm2375.store] letsencrypt[‘auto_renew_hour’] = 12 letsencrypt[‘auto_renew_minute’] = 10 letsencrypt[‘auto_renew_day_of_month’] = “*/7” |
설정 적용
# gitlab-ctl reconfigure
443 포트 확인
# netstat -nltp |grep 443
ssl 인증 적용 확인
5. 클라이언트에서 서버 접속
서버 접속
# glab auth login
토큰 생성 url
https://kimdm2375.store/-/user_settings/personal_access_tokens?scopes=api,write_repository
새로운 토큰 추가
이름 작성후 select scopes 항목 모두 체크 후 생성
토큰 부분에 입력
6. 사용 예시
GitLab 리포지토리의 이슈 목록 표시
GitLab 리포지토리의 파이프라인 목록 표시
GitLab 리포지토리의 머지 리퀘스트(MR) 목록 표시
GitLab 리포지토리에 새 릴리스 생성
GitLab 리포지토리의 레이블 목록 표시
GLab 구성 변경
이상으로 마치겠습니다.