Hyper-V를 사용하여 Windows Server에 GitLab 서버를 설정하는 방법

Windows Server에 GitLab 셀프 관리형을 설정하려면 Hyper-V에서 지원되는 Ubuntu Server 가상 머신을 실행하고 Linux 게스트 내부에 GitLab을 설치하십시오. Windows Server가 호스트 역할을 하며, GitLab은 공식 Linux 패키지에서 실행됩니다. GitLab의 최신 Ubuntu 패키지 가이드에는 Ubuntu 22.04 및 24.04 버전이 명시되어 있으므로 이 가이드에서는 Ubuntu Server 24.04 LTS 버전을 사용합니다.

시작하기 전에 호스트가 게스트 운영 체제에 필요한 CPU, RAM 및 디스크 공간을 확보할 수 있는지 확인하십시오. GitLab의 단일 노드 기본 사양은 8개의 vCPU와 16GB RAM입니다. 애플리케이션에 40GB, 데이터베이스에 5~12GB, 그리고 리포지토리 저장 공간을 확보해야 합니다. SSD 기반 디스크를 사용하고 Windows Server에 필요한 리소스는 남겨두십시오.

1. Hyper-V 역할을 설치합니다.

서버 관리자에서 관리 > 역할 및 기능 추가를 선택하고 로컬 서버를 선택한 다음 Hyper-V를 활성화합니다 . 관리 도구를 포함하고 필요한 재시작을 허용합니다. 관리자 권한으로 PowerShell을 실행하여 다음 명령으로 로컬 역할을 설치할 수도 있습니다.

Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart

Hyper-V 설치 시 호스트가 재시작됩니다. 서버의 관리 설정이 다른 경우 Microsoft의 Hyper-V 설치 가이드를 참조하십시오.

Hyper-V 서버 역할이 선택된 상태에서 서버 관리자의 역할 및 기능 추가 마법사를 실행합니다.
서버 관리자에서 Hyper-V 역할을 선택한 다음 해당 관리 도구를 설치합니다.

2. 게스트용 가상 스위치를 생성합니다.

Hyper-V 관리자에서 가상 스위치 관리자를 열고 호스트의 LAN 어댑터에 외부 스위치를 생성합니다 . Windows에서 이 스위치를 공유할지 여부를 선택합니다. 이렇게 하면 Ubuntu에 LAN 주소가 할당되고 승인된 장치가 GitLab에 액세스할 수 있게 됩니다. 신뢰할 수 있는 LAN 또는 VPN을 사용하고 공용 액세스 전에 네트워크 정책을 준수하십시오. Microsoft의 가상 스위치 가이드를 참조하세요 .

Hyper-V 가상 스위치 관리자에서 이더넷 어댑터에 연결된 외부 스위치를 보여줍니다.
외부 스위치가 우분투 게스트 운영체제를 선택한 물리적 네트워크에 연결합니다.

3. 우분투 가상 머신을 생성합니다.

Ubuntu Server 24.04 LTS를 다운로드하세요 . Hyper-V 관리자에서 가상 머신(VM)을 생성하고 GitLab-Ubuntu, 2세대(Generation 2) 를 선택한 다음 , 외부 스위치를 연결하고 SSD 기반 VHDX 파일을 생성하세요. 단일 노드의 경우 GitLab의 8-vCPU/16-GB 기본 구성을 사용하세요. 랩 환경은 더 작은 규모로 시작하여 성능을 낮출 수도 있습니다.

ISO 파일을 가상 DVD 드라이브에 연결하십시오. Ubuntu가 부팅되지 않으면 2세대 가상 머신의 보안 부팅 템플릿을 Microsoft UEFI 인증 기관 으로 설정하십시오 .

Hyper-V 새 가상 머신 마법사 요약 (2세대 Ubuntu Server 가상 머신용)
이 샘플 2세대 VM은 GitLab에서 공개한 CPU 및 메모리 기본 사양을 따릅니다. 애플리케이션, 데이터베이스 및 리포지토리 증가에 맞춰 확장 가능한 디스크 크기를 조정하십시오.
Hyper-V VM 설정 창에서 Ubuntu Server 설치 ISO 파일이 가상 DVD 드라이브에 연결되어 있는 모습입니다.
여기에 Ubuntu 서버 ISO를 마운트한 다음 네트워크 어댑터 설정에서 외부 스위치를 확인하십시오.

4. 우분투를 설치하고 안정적인 IP 주소를 설정하세요.

가상 머신을 시작하고 Ubuntu Server 설치 프로그램을 완료하세요. 관리자 계정을 생성하고, `/Ubuntu`와 같은 호스트 이름을 사용하며 gitlab, 원격 관리를 위해 OpenSSH를 활성화하세요. 가상 머신에 고정 IP 주소를 할당하거나 DHCP 예약을 통해 주소가 안정적으로 유지되도록 하세요.

이더넷 인터페이스와 호스트 이름(gitlab)이 표시된 Ubuntu Server 설치 프로그램의 네트워크 및 호스트 이름 화면
우분투 설치 중에 가상 머신의 호스트 이름을 설정하고 안정적인 네트워크 구성을 선택하십시오.

첫 로그인 후 사용 가능한 업데이트를 설치하고 메시지가 표시되면 재시작하십시오.

sudo apt update && sudo apt upgrade -y
패키지 업데이트 및 게스트 네트워크 주소를 보여주는 Ubuntu 서버 터미널 화면입니다.
GitLab을 설치하기 전에 Ubuntu를 업데이트하고 게스트 운영 체제가 네트워크 주소에 접근 가능한지 확인하십시오.

5. DNS를 설정하고 필요한 트래픽만 허용합니다.

gitlab.example.com가상 머신의 고정 주소로 확인되는 DNS 레코드를 생성하십시오 . Git over SSH 접속을 위해 TCP 포트 22 , HTTP 및 Let's Encrypt 인증서 유효성 검사를 위해 포트 80 , HTTPS 접속을 위해 포트 443에 대한 인바운드 연결을 허용하십시오 . Ubuntu 방화벽, Windows/네트워크 방화벽, 그리고 호스트 앞에 있는 모든 라우터 또는 클라우드 방화벽에 해당 규칙을 적용하십시오. 가능한 경우 SSH 및 웹 액세스를 의도된 사용자 또는 네트워크로 제한하십시오.

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

6. GitLab Linux 패키지를 설치합니다.

다음 명령은 커뮤니티 에디션 패키지를 설치합니다. 예시 호스트 이름을 구성한 DNS 이름으로 바꾸세요. 엔터프라이즈 에디션의 경우, GitLab의 공식 Ubuntu 설치 가이드 에서 EE 옵션을 사용하세요 . 관리자 권한으로 실행하기 전에 저장소 설정 스크립트를 검토하세요.

sudo apt update
sudo apt install -y curl
curl --location "https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh" | sudo bash
sudo EXTERNAL_URL="https://gitlab.example.com" apt install gitlab-ce

유효한 공용 DNS 이름과 인바운드 HTTP 액세스가 있으면 GitLab은 설치 중에 Let's Encrypt 인증서를 요청할 수 있습니다. 내부 전용 서버의 경우 조직에서 신뢰하는 인증서를 구성하고 GitLab의 최신 TLS 지침을 따르세요. 프로덕션 VM 크기를 결정하기 전에 GitLab 설치 요구 사항을 확인하십시오.

7. 로그인하고 인스턴스를 보호한 다음 리포지토리를 테스트합니다.

설치가 완료되면 GitLab을 실행하세요 https://gitlab.example.com. 사용자 이름으로 로그인하고 Ubuntu VM의 에서 root초기 암호를 확인하세요 . GitLab은 24시간 후 해당 파일을 삭제하므로 암호를 즉시 변경하고 새 자격 증명을 안전하게 보관하세요./etc/gitlab/initial_root_password

브라우저가 HTTPS를 통해 GitLab 로그인 페이지로 열려 있고 사용자 이름과 비밀번호 입력란이 비어 있습니다.
설정된 HTTPS 호스트 이름을 사용하여 GitLab 로그인 페이지에 접속하세요.

테스트 프로젝트를 생성하고 README 파일을 추가한 다음, 클라이언트 컴퓨터에서 HTTPS 또는 SSH를 통해 클론하여 DNS, 방화벽 규칙 및 인증이 제대로 작동하는지 확인합니다. 팀을 초대하기 전에 GitLab에서 권장하는 다음 단계를 검토하고 , 2단계 인증을 활성화하고, 인스턴스가 비공개인 경우 공개 가입을 제한합니다. 예약된 백업을 구성하고 VM에서 백업 파일을 복사합니다. GitLab 백업 가이드에서 백업 명령에 포함되는 항목과 별도로 백업해야 하는 항목을 확인할 수 있습니다.

GitLab 프로젝트 저장소 페이지에서 복제 메뉴를 통해 HTTPS 및 SSH 연결 옵션을 보여줍니다.
프로젝트의 복제 메뉴를 사용하여 팀에서 사용할 HTTPS 또는 SSH 경로를 확인하십시오.

Windows와 Ubuntu의 패치를 최신 상태로 유지하고, 디스크 용량 증가를 모니터링하며, 중요한 저장소에 인스턴스를 사용하기 전에 백업 복원을 테스트하십시오.

댓글 남기기

FotoSketcher를 사용하여 사진을 그림, 스케치, 만화로 변환하세요.

FotoSketcher를 사용하여 사진을 그림, 스케치, 만화로 변환하세요.

FotoSketcher Studio를 사용하여 사진을 그림, 연필 스케치 또는 만화로 변환해 보세요. 효과를 선택하고, 미리보기를 조정하고, 작품을 저장하는 방법을 알아보세요.

오디오 식별 도구를 사용하여 오디오 파일을 자세히 분석하고 식별하세요.

오디오 식별 도구를 사용하여 오디오 파일을 자세히 분석하고 식별하세요.

오디오 식별 도구가 비트 전송률, 인코더 및 태그에 대해 어떤 정보를 제공하는지, 기존 워크플로는 어떻게 작동하는지, 그리고 현재 어떤 도구들이 파일을 검사하거나 노래를 식별하는지 알아보세요.

내 사진 색인: 윈도우용 오픈 소스 사진 정리 도구

내 사진 색인: 윈도우용 오픈 소스 사진 정리 도구

My Photo Index는 로컬 이미지에 태그를 지정하고, 평점을 매기고, 탐색할 수 있는 기존 Windows 사진 관리 프로그램입니다. 해당 프로그램의 기능, 호환성 제한 사항 및 유지 관리되는 대체 프로그램에 대해 알아보세요.

속성 변경 도구를 사용하여 파일 및 폴더의 속성, 날짜 및 시간을 변경하세요.

속성 변경 도구를 사용하여 파일 및 폴더의 속성, 날짜 및 시간을 변경하세요.

Attribute Changer를 사용하여 Windows 파일 속성 및 타임스탬프를 편집하고, JPEG EXIF ​​사진 날짜를 업데이트하고, 일괄 변경 사항을 안전하게 미리 보는 방법을 알아보세요.

Windows 10에서 각 모니터에 다른 배경화면을 설정하는 방법

Windows 10에서 각 모니터에 다른 배경화면을 설정하는 방법

Windows 10 모니터마다 별도의 배경 화면을 설정하고, 디스플레이를 식별하고, 이미지 맞춤을 조정하고, 모니터 선택 항목이 누락된 문제를 해결합니다.

pViewer: 최소한의 기능을 갖춘 이미지 뷰어 및 만화/코믹 리더

pViewer: 최소한의 기능을 갖춘 이미지 뷰어 및 만화/코믹 리더

pViewer의 기능, 사진 및 만화 모드의 작동 방식, 다운로드해야 할 Windows 버전, 그리고 기존 버전과 새로 작성된 버전의 차이점에 대해 알아보세요.

NeoDownloader: 웹사이트에서 이미지를 일괄 다운로드하고 매개변수를 설정하세요

NeoDownloader: 웹사이트에서 이미지를 일괄 다운로드하고 매개변수를 설정하세요

NeoDownloader 프로젝트를 생성하고, 크롤링 범위를 선택하고, 이미지 필터와 저장 위치를 ​​설정하고, 일괄 다운로드를 검토하는 방법을 알아보세요.

Windows 7 및 8에서 단축키를 사용하여 다음 바탕 화면 배경으로 전환하는 방법

Windows 7 및 8에서 단축키를 사용하여 다음 바탕 화면 배경으로 전환하는 방법

Windows 7 또는 8 슬라이드쇼를 설정하고, 간단한 VBScript 바로가기를 만든 다음, 키보드 단축키를 할당하여 다음 배경화면으로 넘어가도록 설정하세요.

XnConvert: 이미지에 효과를 적용하고 형식을 일괄 변환합니다.

XnConvert: 이미지에 효과를 적용하고 형식을 일괄 변환합니다.

XnConvert를 사용하여 사진에 효과를 적용하고, 크기를 조정하고, 이미지 형식을 일괄 변환할 수 있습니다. 출력 설정을 선택하고, 편집 내용을 미리 보고, 원본 파일을 보호하세요.

ManicTime으로 근무 시간과 컴퓨터 사용량을 추적하세요

ManicTime으로 근무 시간과 컴퓨터 사용량을 추적하세요

ManicTime이 애플리케이션 사용, 활성 및 유휴 시간, 문서를 추적하는 방법을 알아보고, 활동 기록을 프로젝트 태그 및 시간표로 변환하세요.