Project/개인 깃허브 제작

개인 Github 제작(Gitea) #1

hu6r1s 2023. 3. 11. 23:44

프로젝트 진행 사유

해당 프로젝트는 작년에 동아리에서 사용할 깃허브가 있으면 정보 공유도 되고 좋을 것 같다는 선배에게 듣고 진행하였으나 어떠한 사유로 진행하지 못하였다.. 그래서 올해 다시 진행해보고 싶었다.

Git 자체 호스팅 서비스

Git 자체 호스팅 서비스들이 몇 가지 있다. 서비스는 클라우드형과 구축형으로 분류할 수 있다.

 

- 클라우드형 서비스: 깃헙(github), 깃랩(gitlab), 빗버킷(bitbucket)

- 구축형 서비스: 깃랩(gitlab), 곡스(gogs), 깃티(gitea)

 

서비스를 선택하기 위해 본 것은 무료로 사용할 수 있는지, Docs가 많이 있는지였다.

클라우드형 서비스는 전부 사용하는 비용이 발생한다. 그래서 구축형 서비스들을 선택하게 되었고 그 중에 무료로 사용할 수 있는 것은 gogsgitea이다.

결국 선택한 서비스는 gitea이다.

Gitea

Gitea

gitea2016gogs에서 포크되어 발전된 서비스이다.

go를 사용하여 만들어졌기 때문에 go가 지원하는 모든 플랫폼(Windows, Linux, macOS )에서 사용할 수 있다.

gitea는 차 한 잔과 함께하는 git으로 컨셉을 잡으며 고통 없는 자체 호스팅 Git 서비스라고 되어 있어 설치하기 쉽다고 한다.

개발 환경 구성

Gitea는 Docker를 이용해 구성할 수도 있다.
그래서 docker-compose를 이용하면 로컬에서 테스트를 하고 동아리 서버에 옮기는 게 더 편하겠다 판단하여 도커를 이용하기로 했다.

설치 과정

  • git 설치 
sudo apt update
sudo apt install git

 

  • gitea 설치
    도커를 통해 이미지를 받을 것이기 때문에 gitea는 따로 설치할 필요가 없다.서비스를 호스팅할 디렉터리를 만들고 docker-compose.yml를 작성한다.
    mkdir ~/gitea
    cd ~/gitea
    nano docker-compose.yml
version: "3"

networks:
  gitea:
    external: false

services:
  server:
    image: gitea/gitea:1.18.5
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__database__DB_TYPE=mysql
      - GITEA__database__HOST=db:3306
      - GITEA__database__NAME=gitea
      - GITEA__database__USER=gitea
      - GITEA__database__PASSWD=gitea
    restart: always
    networks:
      - gitea
    volumes:
      - ./gitea:/data
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "3000:3000"
      - "222:22"
    depends_on:
      - db
  db:
    image: mysql:8
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=gitea
     - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
    networks:
      - gitea
    volumes:
      - ./mysql:/var/lib/mysql

mysql의 계정과 패스워드는 자신의 것으로 설정하면 된다.
그리고 데이터베이스도 만들어놔줘야 한다.

docker-compose up -d

d옵션으로 백그라운드에서 실행하도록 한다.

```
실행이 성공적으로 마치게 되면 127.0.0.1:3000을 접속하면 된다.

gitea 초기화면

위 페이지로 설정하고 나면 성공적으로 끝 마칠 수 있다.

앞으로 진행 계획

동아리 컨셉에 맞게 디자인을 수정하고 https를 적용시킬 계획이다.
마지막으로는 동아리 메인 사이트의 UI에 적용시킬 것이다.

'Project > 개인 깃허브 제작' 카테고리의 다른 글

Gitea 메일러 기능 및 로그 #4  (0) 2023.04.10
Gitea 로고 및 파비콘 변경 #3  (0) 2023.03.18
Gitea 테마 적용 #2  (0) 2023.03.18