반응형
GitLab Omnibus 백업 및 복원하는 방법(backup/restore)
GitLab Omnibus의 백업 및 복원 과정은 GitLab 설치와 관련된 모든 데이터를 안전하게 보관하고 필요할 때 신속하게 복원할 수 있도록 하는 중요한 절차입니다.
백업 디렉터리 확인 및 설정
GitLab의 백업 파일이 저장될 디렉터리를 설정합니다. 기본 디렉터리는 /var/opt/gitlab/backups입니다. 이 디렉터리를 변경하려면 /etc/gitlab/gitlab.rb 파일을 수정합니다.
docker exec -it gitlab cat /etc/gitlab/gitlab.rb
gitlab_rails['backup_path'] = '/your/backup/directory'
GitLab 구성 재구성
설정 파일을 수정한 후 GitLab 구성을 다시 로드합니다.
docker exec -t gitlab gitlab-ctl reconfigure
백업 생성(GitLab Backup)
GitLab의 백업을 생성하려면 아래 명령어를 실행합니다.
- GitLab 12.2 이상
docker exec -t <container name> gitlab-backup create
- GitLab 12.2 이하
docker exec -t <container name> gitlab-rake gitlab:backup:create
백업 파일 확인
백업이 완료되면 지정된 디렉터리에 타임스탬프가 포함된 .tar 파일이 생성됩니다.
$ docker exec -t gitlab gitlab-backup create
--output--
1623113641_2021_06_08_13.12.2_gitlab_backup.tar
$ docker exec -t gitlab gitlab-backup create BACKUP=dump GZIP_RSYNCABLE=yes
--output--
dump_gitlab_backup.tar
복원(GitLab Restore)
GitLab 서비스 중지
- 복원을 수행하기 전에 GitLab 서비스를 중지합니다.
docker exec -it <name of container> gitlab-ctl stop
더보기
---
데이터베이스에 연결된 프로세스를 중지
docker exec -it <name of container> gitlab-ctl stop puma
$ docker exec -it gitlab gitlab-ctl stop puma
docker exec -it <name of container> gitlab-ctl stop sidekiq
$ docker exec -it gitlab gitlab-ctl stop sidekiq
---
백업 파일 이동
- 복원하려는 백업 파일을 백업 디렉터리 (/var/opt/gitlab/backups 또는 설정된 디렉터리)로 이동합니다.
프로세스가 모두 중단되었는지 확인
docker exec -it <name of container> gitlab-ctl status
$ docker exec -it gitlab gitlab-ctl status
백업 파일 소유권 설정
- 백업 파일의 소유권을 GitLab 사용자로 변경합니다.
docker exec -it <name of container> sh -c "chown git:git /var/opt/gitlab/backups/1626071519_2021_07_12_13.0.6_gitlab_backup.tar"
백업 복원
- 복원 명령어를 실행하여 백업을 복원합니다.
docker exec -it <name of container> gitlab-backup restore BACKUP=11493107454_2018_04_25_10.6.4-ce
$ docker exec -it gitlab gitlab-backup restore BACKUP=1623113641_2021_06_08_13.12.2
GitLab 구성 재구성
- GitLab의 재구성을 실행하여 설정이 올바르게 적용되었는지 확인합니다.
docker exec -it <name of container> gitlab-ctl reconfigure
GitLab 서비스 시작
- GitLab 서비스를 다시 시작합니다.
docker exec -it <name of container> gitlab-ctl start
더보기
---
GitLab 컨테이너 다시 시작
docker restart <name of container>
$ docker restart gitlab
---
GitLab 확인
docker exec -it <name of container> gitlab-rake gitlab:check SANITIZE=true
$ docker exec -it gitlab gitlab-rake gitlab:check SANITIZE=true
** 배업 파일명 : 11493107454_2018_04_25_10.6.4-ce_gitlab_backup.tar 파일명
리스토어 시 11493107454_2018_04_25_10.6.4까지만 기재하면 됩니다.
참고URL
- GitLab Docs : Back up and restore GitLab
728x90
반응형
'리눅스' 카테고리의 다른 글
파일 디스크립터(File Descriptor) 및 설정(ulimit) (0) | 2021.06.08 |
---|---|
GitLab Omnibus를 Docker 컨테이너로 올리는 방법 (0) | 2021.06.08 |
OpenLDAP과 phpLDAPadmin을 Docker 컨테이너로 실행하는 방법 (0) | 2021.06.07 |
curl 명령어 (0) | 2021.06.04 |
sipcalc 명령어 (0) | 2021.06.03 |