# 1. 전제조건 [[Network/nginx|리버스 프록시]]가 필요함 # 2. Install using docker ## 2.1. Directory structure ```dirtree - /mnt/md0/infra - .env - compose.yml - /nginx - nginx.conf - /conf.d - default.conf - locations - gitea.conf - /gitea ``` /gitea 폴더 새로 생성 /nginx/conf.d/locations/gitea.conf 파일 새로 생성 ## 2.2. Docker compose /compose.yml 수정 ```yml name: infrastructure service: nginx: # 기존 코드 생략 networks: - infra # 새로 추가한 코드 gitea: image: gitea/gitea:1.22.1 container_name: gitea restart: always environment: - USER_UID=1000 - USER_GID=1000 volumes: - ${BASE_PATH}/gitea:data:rw - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - 3000:3000 networks: - infra # 새로 추가한 코드 networks: infra: driver: bridge ``` ## 2.3. Reverse Proxy ### 2.3.1. /nginx/nginx.conf size 제한으로 인해 push에 실패할 수 있는 현상을 수정하기 위해 제한을 없앰 ```nginx http { include /etc/nginx/mime.types; default_type application/octet-stream; client_max_body_size 0; ... } ``` ### 2.3.2. /nginx/conf.d/gitea.conf ```nginx location /git { proxy_set_header Connection $http_connection; proxy_set_header Upgrade $http_upgrade; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://gitea:3000; } ``` # 3. Init 수정할 설정 목록 - 데이터베이스 유형 : SQLite3 - 사이트 제목 : Home Gitea - SSH 서버 포트 : 삭제 - Gitea 기본 URL : `http://192.168.200.10/git` - 관리자 계정 설정 - Gitea 설치하기 버튼 클릭