개발 도구 자식 Linux에서 Gogs를 통해 자신만의 Github을 구축하는 방법

Linux에서 Gogs를 통해 자신만의 Github을 구축하는 방법

Mar 31, 2023 pm 02:02 PM

Github의 점진적인 인기로 인해 점점 더 많은 사람들이 Github에서 자신만의 프로젝트를 구축하기로 선택하게 될 것입니다. 즉, Github에 자신의 코드를 게시하는 것입니다. 그러나 Github은 단일 계정에서 생성할 수 있는 프라이빗 리포지토리 수를 제한하므로 자주 사용하는 일부 사용자는 자신의 코드 리포지토리를 구축하기 위한 다른 방법을 찾아야 할 수도 있습니다. 이때에는 Github을 직접 구축하는 것이 선택 사항이 되었습니다. 이 글에서는 Linux 시스템에서 Gogs를 통해 자신만의 Github을 구축하여 Github 계정의 제한을 해제하는 방법을 주로 소개합니다.

1. 설치 환경

빌드를 시작하기 전에 시스템에 해당 환경이 설치되어 있는지 확인해야 합니다.

  1. MySQL 또는 PostgreSQL
  2. Go >= 1.12.x
  3. Git >= 1.7 .1 (2 .x 권장)

Ubuntu 시스템의 경우 다음 명령을 통해 MySQL을 설치할 수 있습니다.

sudo apt-get update
sudo apt-get install mysql-server
로그인 후 복사

Go 설치 방법은 공식 홈페이지에서 다운로드하여 지침을 따르시면 됩니다.

Ubuntu 또는 Debian 시스템의 일부 버전에서는 git-core가 설치되지 않을 수 있으므로 설치해야 합니다.

sudo apt-get update
sudo apt-get install git-core
로그인 후 복사

2. Gogs 설치

  1. Github에서 최신 버전의 Gogs를 다운로드하여 이 디렉터리에 압축을 풉니다. :
wget https://dl.gogs.io/gogs_latest_linux_amd64.tar.gz
tar xvfz gogs_latest_linux_amd64.tar.gz
로그인 후 복사
  1. 다운로드한 Gogs 디렉터리를 입력하고 설치를 수행하세요.
cd gogs
./gogs install
로그인 후 복사

설치를 수행할 때 다음 내용을 입력해야 합니다.

Do you want to install as Windows service/daemon? (y/n)
n
로그인 후 복사
Please enter the URL: (e.g. http://domain.com[:port] or http://[IP]:[port])
http://localhost:3000
로그인 후 복사

다음 설치 단계에서는 일부 데이터베이스 관련 내용을 입력하라는 메시지가 표시됩니다. 당신은 당신의 구성 요구에 따라 그것을 입력해야합니다. 이 단계에서는 MySQL을 데이터베이스로 사용하고 두 번째 서버를 설치하는 것이 좋습니다.

Git 정보를 입력해야 할 경우 GitHub에 사용되는 SSH 키를 추가하는 데 주의가 필요합니다.

  1. Gogs 시작:
cd gogs
./gogs web
로그인 후 복사

시작이 성공적으로 완료되면 브라우저에서 http://localhost:3000을 방문할 수 있습니다.

3. Nginx 역방향 프록시 구성

Gogs 인스턴스가 프로덕션 환경에 있는 경우 Nginx를 역방향 프록시 서버로 사용하는 것이 좋습니다.

  1. Nginx 설치:
sudo apt install nginx
로그인 후 복사
  1. 가상 호스트 파일 만들기:
sudo nano /etc/nginx/sites-available/gogs
로그인 후 복사

다음 콘텐츠를 추가하세요.

server {
    listen 80;

    server_name git.example.com; # your domain name

    access_log /var/log/nginx/git.access.log;
    error_log /var/log/nginx/git.error.log;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $http_host;
    }

    location /ws {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }

    location ~ /\. {
        deny all;
    }
}
로그인 후 복사

필요에 따라 server_name을 변경하세요.

  1. Nginx가 가상 호스트를 확인하는지 확인하세요.
sudo ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/
로그인 후 복사

그런 다음 Nginx 구성을 다시 로드하세요.

sudo nginx -t
sudo systemctl reload nginx
로그인 후 복사

이제 웹 브라우저에서 웹 사이트를 열고 GitHub OAuth를 통해 로그인할 수 있습니다.

4. 요약

위는 Gogs를 통해 나만의 Github 계정을 설정하는 방법입니다. 실제 작업에서 몇 가지 세부 사항을 접하게 될 것이라고 생각하지만 일반적으로 작업은 간단하고 이해하기 쉽습니다. 이러한 자세한 질문에 대해서는 공식 문서나 포럼으로 이동하여 도움을 받을 수 있습니다. Github을 직접 구축하면 보다 유연한 관리가 가능해질 뿐만 아니라 개발자 도구를 사용하면 학습 프로젝트가 될 수도 있습니다.

위 내용은 Linux에서 Gogs를 통해 자신만의 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 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

Git vs. Github : 버전 제어 및 코드 호스팅 Git vs. Github : 버전 제어 및 코드 호스팅 Apr 11, 2025 am 11:33 AM

GIT는 버전 제어 시스템이며 GitHub는 GIT 기반 코드 호스팅 플랫폼입니다. GIT는 코드 버전을 관리하는 데 사용되며 로컬 작업을 지원합니다. GitHub는 문제 추적 및 풀 레크와 같은 온라인 협업 도구를 제공합니다.

git은 github와 동일합니까? git은 github와 동일합니까? Apr 08, 2025 am 12:13 AM

Git과 Github도 같은 것이 아닙니다. GIT는 버전 제어 시스템이며 GitHub는 GIT 기반 코드 호스팅 플랫폼입니다. GIT는 코드 버전을 관리하는 데 사용되며 Github은 온라인 협업 환경을 제공합니다.

Github는 배우기가 어렵습니까? Github는 배우기가 어렵습니까? Apr 02, 2025 pm 02:45 PM

Github는 배우기가 어렵지 않습니다. 1) 기본 지식 마스터 : GitHub는 코드 변경 및 협업 개발을 추적하는 데 도움이되는 GIT 기반 버전 제어 시스템입니다. 2) 핵심 기능 이해 : 버전 제어는 각 제출, 로컬 작업 지원 및 원격 동기화를 기록합니다. 3) 사용 방법 : 저장소 작성부터 커밋 푸시, 분기 사용 및 요청을 당기는 것까지. 4) 일반적인 문제 해결 : 합병 충돌 및 파일 추가 잊어 버린 것과 같은. 5) 최적화 실습 : 의미있는 제출 메시지를 사용하고, 분기를 정리하고, 프로젝트 보드를 사용하여 작업을 관리합니다. 실습과 커뮤니티 커뮤니케이션을 통해 Github의 학습 곡선은 가파르지 않습니다.

이력서에 git 또는 github를 넣어야합니까? 이력서에 git 또는 github를 넣어야합니까? Apr 04, 2025 am 12:04 AM

이력서에서는 위치 요구 사항과 개인 경험에 따라 GIT 또는 GitHub를 작성하도록 선택해야합니다. 1. 위치에 GIT 기술이 필요한 경우 git을 강조 표시하십시오. 2. 직위가 커뮤니티 참여를 가치있게 평가하면 Github를 보여주십시오. 3. 사용 경험과 프로젝트 사례를 자세히 설명하고 완전한 문장으로 끝내십시오.

Microsoft는 git 또는 github를 소유합니까? Microsoft는 git 또는 github를 소유합니까? Apr 05, 2025 am 12:20 AM

Microsoft는 Git을 소유하지 않지만 Github를 소유하고 있습니다. 1. Git은 2005 년 Linus Torvaz가 만든 분산 버전 제어 시스템입니다. 2. Github는 GIT를 기반으로 한 온라인 코드 호스팅 플랫폼입니다. 2008 년에 설립되어 2018 년 Microsoft에서 인수했습니다.

git 또는 github로 시작해야합니까? git 또는 github로 시작해야합니까? Apr 06, 2025 am 12:09 AM

GIT에서 시작하는 것은 버전 제어 원칙에 대한 깊은 이해에 더 적합하며 GitHub에서 시작하는 것은 협업 및 코드 호스팅에 중점을 두는 데 더 적합합니다. 1. git은 코드 버전 기록을 관리하는 데 도움이되는 분산 버전 제어 시스템입니다. 2. GitHub는 GIT를 기반으로 한 온라인 플랫폼으로 코드 호스팅 및 협업 기능을 제공합니다.

간단한 말로 git은 무엇입니까? 간단한 말로 git은 무엇입니까? Apr 09, 2025 am 12:12 AM

GIT는 개발자가 파일 변경을 추적하고 협력하며 코드 버전을 관리하는 데 도움이되는 오픈 소스 분산 버전 제어 시스템입니다. 핵심 기능에는 1) 레코드 코드 수정, 2) 이전 버전으로의 폴백, 3) 협업 개발 및 4) 병렬 개발을위한 분기 생성 및 관리가 포함됩니다.

HTML에 github를 사용하는 방법은 무엇입니까? HTML에 github를 사용하는 방법은 무엇입니까? Apr 07, 2025 am 12:13 AM

HTML 프로젝트를 관리하기 위해 GitHub를 사용하는 이유는 버전 제어, 협업 개발 및 작품 발표를위한 플랫폼을 제공하기 때문입니다. 특정 단계에는 다음이 포함됩니다. 1. Git 저장소 작성 및 초기화, 2. HTML 파일 추가 및 제출, 3. GitHub에 푸시, 4. GitHubPages를 사용하여 웹 페이지를 배포, 5. GitHubactions를 사용하여 빌드 및 배포를 자동화하십시오. 또한 GitHub은 HTML 프로젝트를 최적화하고 협업하는 데 도움이되는 코드 검토, 문제 및 풀 레크 기능 기능을 지원합니다.

See all articles