91 lines
1.9 KiB
Markdown
91 lines
1.9 KiB
Markdown
# 전제조건
|
|
[[Network/nginx for reverse proxy|리버스 프록시]]가 필요함
|
|
|
|
# Install using docker
|
|
## 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 파일 새로 생성
|
|
|
|
## 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
|
|
```
|
|
|
|
## Reverse Proxy
|
|
|
|
### /nginx/nginx.conf
|
|
size 제한으로 인해 push에 실패할 수 있는 현상을 수정하기 위해 제한을 없앰
|
|
|
|
```nginx
|
|
http {
|
|
include /etc/nginx/mime.types;
|
|
default_type application/octet-stream;
|
|
client_max_body_size 0;
|
|
|
|
...
|
|
}
|
|
```
|
|
|
|
### /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;
|
|
}
|
|
```
|
|
|
|
# Init
|
|
수정할 설정 목록
|
|
- 데이터베이스 유형 : SQLite3
|
|
- 사이트 제목 : Home Gitea
|
|
- SSH 서버 포트 : 삭제
|
|
- Gitea 기본 URL : `http://192.168.200.10/git`
|
|
- 관리자 계정 설정
|
|
- Gitea 설치하기 버튼 클릭 |