Ubuntu 18.04에 Gitea 설치 방법

Ubuntu 18.04에 Gitea 설치 방법

2022-05-31 last update

19 minutes reading git ubuntu gitea
Gitea는 Go로 작성된 자가 관리 개원 git 서버입니다.얘는 포크예요.
.Gitea는 저장소 파일 편집기, 프로젝트 문제 추적, 사용자 관리, 알림, 내장wiki 등을 포함한다.Gogs
저전력 시스템에 설치할 수 있는 경량급 응용 프로그램입니다.메모리가 훨씬 적은 Gitlab의 대체품을 찾고 있다면, 이 모든 것을 필요로 하지 않습니다Gitea
혜택, 그럼 Gitea를 꼭 시도해 보세요.이 강좌에서는 Ubuntu 18.04에서 Gitea를 설치하고 구성하는 방법을 설명합니다.같은 설명은 Ubuntu 16.04 및 기타 Debian 기반 릴리스에도 적용됩니다.

선결 조건

Gitea 지원 SQLiteGitlab
, 및 PostgreSQL
/MySQL
데이터베이스 백엔드로SQLite를 Gitea 데이터베이스로 사용합니다.Ubuntu 시스템에 SQLite가 설치되어 있지 않은 경우 다음 명령MariaDB을 입력하여 설치할 수 있습니다.
:
sudo apt updatesudo apt install sqlite3

Gitea 설치

Gitea는 소스 코드, 바이너리 파일 및 패키지에서 설치할 수 있는 Docker 이미지를 제공합니다.바이너리 파일에서 Gitea를 설치합니다.

Git 설치

첫 번째 단계는 sudo user
서버에서:
sudo apt updatesudo apt install git
Git 버전 표시
git --version
git version 2.17.1

Git 사용자 만들기

install Git를 통해 설치 확인
입력:
sudo adduser --system --group --disabled-password --shell /bin/bash --home /home/git --gecos 'Git Version Control' git
을 사용하여 Gitea 응용 프로그램을 실행합니다. 이 명령은 git 이라는 새 사용자와 그룹을 만들고 홈 디렉터리를 /home/git 로 설정합니다.출력은 다음과 같습니다.
Adding system user `git' (UID 111) ...
Adding new group `git' (GID 116) ...
Adding new user `git' (UID 111) with group `git' ...
Creating home directory `/home/git' ...

Gitea 바이너리 다운로드

액세스 Create a new system user
아키텍처에 사용할 최신 바이너리 파일을 다운로드합니다.본문을 작성할 때 최신 판본은 1.10.2이다.새 버전을 사용할 수 있으면 다음 명령에서 변수 VERSION 를 변경합니다.다음 명령Gitea Download page을 사용하여 디렉토리의 Gitea 바이너리 파일 다운로드
명령:
VERSION=1.10.2sudo wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64
/tmp 바이너리 파일은 어디에서나 실행할 수 있습니다.우리는 약정에 따라 바이너리 파일을 wget 디렉터리로 이동할 것입니다.
sudo mv /tmp/gitea /usr/local/bin
바이너리 파일을 실행할 수 있도록 합니다.
sudo chmod +x /usr/local/bin/gitea
다음 명령을 실행하여 디렉터리를 만들고 필요한 권한을 설정합니다.
:
sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}sudo chown git: /var/lib/gitea/{data,indexers,log}sudo chmod 750 /var/lib/gitea/{data,indexers,log}sudo mkdir /etc/giteasudo chown root:git /etc/giteasudo chmod 770 /etc/gitea
상기 디렉터리 구조는 Gitea 공식 문서에서 추천한 것이다.gitea 디렉터리의 권한은 /usr/local/bin로 설정되어 설치 마법사가 프로필을 만들 수 있도록 합니다.설치가 완료되면 더 많은 제한 권한을 설정할 것입니다.

Systemd 단위 파일 만들기

Gitea는 Systemd 단위 파일을 제공합니다. 이 파일은 우리의 설정과 일치하도록 설정되었습니다.(adsbygoogle=window.adsbygoogle | | []) 를 입력하여 파일을 /etc/gitea 디렉터리로 다운로드합니다.푸시({});
sudo wget https://raw.githubusercontent.com/go-gitea/gitea/master/contrib/systemd/gitea.service -P /etc/systemd/system/
완료 후 Gitea 서비스 활성화 및 시작:
sudo systemctl daemon-reloadsudo systemctl enable --now gitea
서비스가 성공적으로 시작되었는지 확인:
sudo systemctl status gitea

Gitea 구성

현재 Gitea가 다운로드되어 실행되고 있으며 웹 인터페이스를 통해 설치를 완료할 때입니다.기본적으로 Gitea는 모든 네트워크 인터페이스의 포트 770 에 대한 연결을 탐지합니다.있는 경우 /etc/systemd/system/
서버에서 실행할 때 Gitea 포트를 열어야 합니다. 포트3000의 트래픽을 허용하려면 다음 명령을 입력하십시오.
● gitea.service - Gitea (Git with a cup of tea)
   Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2020-01-04 21:27:23 UTC; 3s ago
 Main PID: 14804 (gitea)
    Tasks: 9 (limit: 1152)
   CGroup: /system.slice/gitea.service
           └─14804 /usr/local/bin/gitea web --config /etc/gitea/app.ini
...
브라우저를 열고 3000 를 입력하면 다음과 같은 화면이 나타납니다. 데이터베이스 설정:
  • 데이터베이스 유형: SQLite3
  • 경로: 절대 경로를 사용합니다.http://YOUR_DOMAIN_IR_IP:3000
  • 응용 프로그램의 일반적인 설정:
  • 사이트 제목: 조직 이름을 입력하십시오.
  • 저장소 루트 경로: 기본값 유지/var/lib/gitea/data/gitea.db.
  • Git LFS 루트 경로: 기본값 유지/home/git/gitea-repositories.
  • 실행 방식 사용자 이름:git
  • SSH 서버 도메인: 도메인 또는 서버 IP 주소를 입력합니다.
  • SSH 포트: 22, SSH가 ownership
  • Gitea HTTP 스누핑 포트: 3000
  • Gitea 기본 URL: HTTP와 도메인 또는 서버 IP 주소를 사용하려면 변경합니다.
  • 로그 경로: 기본값/var/lib/gitea/data/lfs
  • 을 유지하면 Gitea 프로필을 편집하여 언제든지 설정을 변경할 수 있습니다.완료되면 Gitea 설치 버튼을 클릭합니다.설치는 즉시 수행됩니다.완료되면 로그인 페이지로 리디렉션됩니다.지금 등록 링크를 클릭합니다.첫 번째 등록 사용자가 관리 그룹에 자동으로 추가됩니다.변경UFW firewall
    사용:
    sudo ufw allow 3000/tcp
    Gitea 구성 파일을 읽기 전용으로 설정합니다.Gitea가 Ubuntu 시스템에 설치되어 있습니다.

    Nginx를 SSL 종료 에이전트로 구성

    이 단계는 선택 사항이지만 실행하는 것이 좋습니다.사용listening on other Port
    서버의 공용 IP를 가리키는 도메인이나 하위 도메인이 필요합니다.이 강좌에서 우리는 사용할 것이다 /var/lib/gitea/log.먼저 Nginx를 설치하고 다음 안내서를 사용하여 SSL 인증서를 암호화할 수 있습니다.
  • permissions
  • Nginx as a reverse proxy
  • 을 완료한 후 텍스트 편집기를 열고 도메인을 편집합니다How To Install Nginx on Ubuntu 18.04.
    파일:
    sudo chmod 750 /etc/giteasudo chmod 640 /etc/gitea/app.ini
    /etc/nginx/sites enabled/git.인스턴스com
    sudo nano /etc/nginx/sites-enabled/git.example.com
    git 교체를 잊지 마세요.인스턴스Gitea 도메인에 com 액세스하고 SSL 인증서 파일의 올바른 경로를 설정합니다.Secure Nginx with Let’s Encrypt on Ubuntu 18.04server block
    변경 사항을 적용하려면:
    server {
        listen 80;
        server_name git.example.com;
    
        include snippets/letsencrypt.conf;
        return 301 https://git.example.com$request_uri;
    }
    
    server {
        listen 443 ssl http2;
        server_name git.example.com;
    
        proxy_read_timeout 720s;
        proxy_connect_timeout 720s;
        proxy_send_timeout 720s;
    
        client_max_body_size 50m;
    
        # Proxy headers
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
    
        # SSL parameters
        ssl_certificate /etc/letsencrypt/live/git.example.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/git.example.com/privkey.pem;
        ssl_trusted_certificate /etc/letsencrypt/live/git.example.com/chain.pem;
        include snippets/letsencrypt.conf;
        include snippets/ssl.conf;
    
        # log files
        access_log /var/log/nginx/git.example.com.access.log;
        error_log /var/log/nginx/git.example.com.error.log;
    
        # Handle / requests
        location / {
           proxy_redirect off;
           proxy_pass http://127.0.0.1:3000;
        }
    }
    
    Gitea 도메인과 루트 URL을 변경합니다.이를 위해 프로필을 열고 다음 줄을 편집합니다.
    sudo systemctl restart nginx
    /etc/gitea/app.ii
    sudo nano /etc/gitea/app.ini
    :
    [server]
    DOMAIN           = git.example.com
    ROOT_URL         = https://git.example.com/
    
    를 입력하여 Gitea 서비스를 다시 시작합니다. 이 때 Gitea 에이전트가 설정되어 있습니다. git.example.com

    e-메일 알림 구성

    에 접근할 수 있습니다. Gitea가 알림 이메일을 보낼 수 있도록 Postfix를 설치하거나 SendGrid, MailChimp, MailGun 또는 SES 같은 사무적인 메일 서비스를 사용할 수 있습니다.전자 메일 알림을 사용하려면 프로필을 열고 다음 줄을 편집하십시오.
    sudo systemctl restart gitea
    /etc/gitea/app.ini
    sudo nano /etc/gitea/app.ini
    는 올바른 SMTP 서버 정보를 입력했는지 확인합니다.Gitea 서비스를 다시 시작하여 변경 사항을 적용합니다.
    [mailer]
    ENABLED = true
    HOST    = SMTP_SERVER:SMTP_PORT
    FROM    = SENDER_EMAIL
    USER    = SMTP_USER
    PASSWD  = YOUR_SMTP_PASSWORD
    
    설정을 확인하고 테스트 이메일을 보내려면 Gitea에 로그인한 다음: 사이트 관리 > 구성 > SMTP 메일 프로그램 구성으로 이동합니다.Gitea에서 Slack에 연결할 수 있도록 만들기 HTTP traffic is redirected to HTTPS
    알림 보내기 Restart the Nginx service
    .

    Gitea 업그레이드

    최신 Gitea 버전으로 업그레이드하려면 바이너리 파일을 다운로드하고 교체해야 합니다.
  • Gitea 서비스 중단:
    sudo systemctl restart gitea
  • 최신 Gitea 버전을 다운로드하여 https://git.example.com 디렉터리로 이동:
    sudo systemctl stop gitea
  • 바이너리를 실행할 수 있도록 하기:
    VERSION=<THE_LATEST_GITEA_VERSION>wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64sudo mv /tmp/gitea /usr/local/bin
  • Gitea 서비스 다시 시작:
    sudo chmod +x /usr/local/bin/gitea
  • 그렇습니다.(adsbygoogle=window.adsbygoogle | |[]).푸시({});

    결론

    이 강좌는 Ubuntu 18.04에 Gitea를 설치하는 과정을 소개합니다.지금 방문하셔야 합니다web webhook
    Gitea 인스턴스를 구성하고 첫 번째 프로젝트를 만드는 방법을 학습합니다.