개발 도구 자식 GitHub 서버 설정 방법에 대한 자세한 설명

GitHub 서버 설정 방법에 대한 자세한 설명

Mar 31, 2023 pm 02:02 PM

GitHub는 수백만 명의 등록 사용자와 수백만 개의 오픈 소스 코드 저장소를 보유한 세계에서 가장 인기 있는 코드 호스팅 플랫폼 중 하나입니다. 그러나 기업이나 개인의 경우 자체 서버에서 코드를 호스팅하면 보안과 데이터 제어가 강화될 수 있습니다. 따라서 이번 글에서는 GitHub 서버를 설정하는 방법을 소개하겠습니다.

1. 환경 준비

1. 하드웨어 준비

GitHub 서버에 필요한 하드웨어 요구 사항은 그리 높지 않으며 일반적으로 일반 서버에서 수행할 수 있습니다. 하지만 서버의 대역폭이 1Mbps보다 크고, 코드 라이브러리, 로그 등의 데이터를 수용할 수 있는 충분한 저장 공간이 있는지 확인하는 것이 가장 좋습니다.

2. 소프트웨어 준비

다음 소프트웨어를 설치해야 합니다:

a.Git 및 기타 필요한 도구

Git은 GitHub의 핵심 버전 관리 시스템이며 클라이언트를 다운로드하여 설치해야 합니다.

b. SSH

SSH는 안전하지 않은 네트워크에서 네트워크 서비스에 대한 보안 연결을 제공하기 위해 인터넷에서 사용되는 네트워크 프로토콜입니다. SSH 클라이언트 구성 요소를 설치해야 합니다.

c. Nginx

Nginx는 경량 웹 서버이자 역방향 프록시 서버입니다. HTTP 서비스를 외부에 제공하기 위해서는 설치가 필요합니다.

d. OpenSSL

OpenSSL은 SSL 및 TLS 프로토콜을 지원하고 안전한 통신 연결을 제공하는 오픈 소스 암호화 라이브러리입니다. HTTPS 프로토콜을 지원하려면 이 라이브러리를 설치해야 합니다.

2. GitLab 설치

GitLab을 설치하기 전에 위의 소프트웨어를 설치하고 정상적으로 실행되는지 확인해야 합니다.

1. GitLab 설치

GitLab 공식 웹사이트에서 최신 GitLab 설치 패키지를 다운로드하고 다음 명령을 사용하여 설치하세요.

sudo dpkg -i gitlab-ce_*_amd64.deb

참고: GitLab의 오픈 소스 버전 여기서는 Enterprise Edition이 아닌 GitLab Community Edition 버전이 사용됩니다.

2. GitLab 구성

1) GitLab 시작

설치가 완료되면 다음 명령을 사용하여 GitLab을 시작합니다.

sudo gitlab-ctl reconfigure

2) GitLab에 액세스

시작이 완료되면 브라우저(http://your-server-ip/)를 통해 GitLab에 접속할 수 있으며 관리자 계정을 생성하고 새 창고를 생성할 수 있습니다.

3. Nginx 구성, HTTPS

1) Nginx 구성

서버에 Nginx를 설치하고 다음 명령을 사용하여 설치합니다.

sudo apt-get install nginx

다음과 같이 Nginx 구성 파일에 GitLab 구성을 추가합니다. :

업스트림 gitlab-workhorse {

server unix:/var/opt/gitlab/gitlab-workhorse/socket;

}

server {

listen 80;

server_name your-domain.com;

return 301 https://$server_name$request_uri;

}

server {

# Nginx는 포트 8080에서 수신 대기하고 GitLab Puma는 포트 8081에서 수신 대기

기본 8080 수신;

server_name your-domain.com;

# # 성능 최적화는 구성을 사용할 수 있습니다

# server_tokens off

## ~ 정규식으로 시작

## /ci 정규식은 /ci와 관련된 모든 요청을 GitLab Puma HTTP 서버

location /ci로 전달하는 것입니다. {

proxy_read_timeout 300;

proxy_connect_timeout 300;

proxy_redirect off;

proxy_http_version 1.1;

proxy_set_header   X-Real-IP $remote_addr;

proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header   Host $http_host;

proxy_set_header   Connection '';

proxy_pass http://127.0.0.1:8081;
로그인 후 복사
로그인 후 복사

}

}

2) SSL 인증서 생성

서버에서 SSL 인증서를 생성하려면 다음 명령을 사용하세요:

openssl req -new -newkey rsa:2048 -days 365 -nodes - x509 -keyout your- key-file.key -out your-ssl-file.crt

Nginx 구성 파일에 SSL 인증서 관련 구성을 추가합니다.

server {

# HTTPS 수신 443 포트

listen 443 ssl;

server_name your -domain.com;

ssl_certificate /path/to/your-ssl-file.crt;

ssl_certificate_key /path/to/your-key-file.key;

## ~시작은 정규 표현식

위치 /ci {

proxy_read_timeout 300;

proxy_connect_timeout 300;

proxy_redirect off;

proxy_http_version 1.1;

proxy_set_header   X-Real-IP $remote_addr;

proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header   Host $http_host;

proxy_set_header   Connection '';

proxy_pass http://127.0.0.1:8081;
로그인 후 복사
로그인 후 복사

}

}

3. 요약

이 글에서는 GitHub 서버 구축 방법을 소개합니다: 환경 준비, GitLab 설치, Nginx 구성, HTTPS 구성. 이 글이 GitLab 서버를 설정해야 하는 독자들에게 도움이 되기를 바랍니다.

위 내용은 GitHub 서버 설정 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

GIT 관리 도구를 완전히 사용하기 위해 GIT 관리 도구를 사용하는 방법 GIT 관리 도구를 완전히 사용하기 위해 GIT 관리 도구를 사용하는 방법 Mar 06, 2025 pm 01:32 PM

이 기사는 GUI 도구 (Sourcetree, Gitkraken 등), 필수 명령 (Git Init, Git Clone, Git Add, Git Commit 등), 지점 관리 모범 사례 (기능 분기, 요청) 및 Merge Con에 대한 GIT 관리에 대한 안내서를 제공합니다.

지정된 커밋을 추진하는 방법 지정된 커밋을 추진하는 방법 Mar 06, 2025 pm 01:39 PM

이 안내서는 단일 git 커밋을 원격 브랜치로 밀리는 방법을 설명합니다. 임시 지점을 사용하여 커밋을 분리 하고이 지점을 리모콘으로 밀고 선택적으로 임시 지점을 삭제합니다. 이 방법은 충돌을 피하고

커밋 내용을 보는 방법 커밋 내용을 보는 방법 Mar 06, 2025 pm 01:41 PM

이 기사는 GIT 커밋 컨텐츠를보기위한 방법을 자세히 설명합니다. git show를 사용하여 커밋 메시지, 저자 정보 및 변경 (DIFF), 여러 Commit 'Diff에 대한 GIT 로그 -P를 표시하고 Commit을 직접 확인하는 것에 대한주의 사항에 중점을 둡니다. 대체

커밋과 git의 추진의 차이 커밋과 git의 추진의 차이 Mar 06, 2025 pm 01:37 PM

이 기사에서는 Git의 커밋과 푸시 명령의 차이점을 설명합니다. Git Commit은 로컬에서 변경 사항을 저장하는 반면 Git Push는 이러한 커밋 된 변경 사항을 원격 저장소에 업로드합니다. 이 기사는이 분류를 이해하는 것의 중요성을 강조합니다

GIT 커밋 제출의 실패를 해결하는 방법 GIT 커밋 제출의 실패를 해결하는 방법 Mar 06, 2025 pm 01:38 PM

이 기사는 일반적인 GIT 커밋 실패를 다룹니다. 추적되지 않은 파일, 무대 변경 변경, 충돌 병합 및 사전 커밋 후크와 같은 문제에 대한 문제 해결 단계에 대해 자세히 설명합니다. 더 부드러운 git wo를 보장하기 위해 솔루션 및 예방 조치가 제공됩니다.

git의 추가와 커밋의 차이 git의 추가와 커밋의 차이 Mar 06, 2025 pm 01:35 PM

이 기사에서는 Git에서 Git Add와 Git Commit의 뚜렷한 역할을 설명합니다. GIT는 단계 변경 사항을 추가하여 다음 커밋에 포함시킬 준비를하고 GIT Commit은 저장소의 역사에 대한 단계적 변경 사항을 저장합니다. 이 2 단계 프로세스가 가능합니다

초보자를위한 GIT 관리 도구 사용을위한 GIT 관리 도구 튜토리얼 사용 방법 초보자를위한 GIT 관리 도구 사용을위한 GIT 관리 도구 튜토리얼 사용 방법 Mar 06, 2025 pm 01:33 PM

이 초보자 안내서는 버전 제어 시스템 인 GIT를 소개합니다. 기본 명령 (Init, Add, Commit, Status, Log, Branch, Checkout, Merge, Push, Pull) 및 병합 충돌을 해결합니다. Clear Comm을 포함한 효율적인 GIT 사용을위한 모범 사례

GIT 코드 관리 도구 란 무엇입니까? GIT 코드 관리 도구 란 무엇입니까? Mar 06, 2025 pm 01:31 PM

이 기사는 분산 버전 제어 시스템 인 GIT를 소개합니다. 오프라인 기능 및 강화 된 협업을위한 효율적인 분기/병합과 같은 중앙 집중식 시스템에 대한 GIT의 장점을 강조합니다. 이 기사는 또한 학습 r

See all articles