저번 포스팅에서 Docker와 Portainer를 설치해 봤습니다
서비스를 설치하기 위한 준비가 끝났으니 이번 포스팅에서는 이를 활용하여
시놀로지 NAS에 Gitea를 설치해 보겠습니다
※이 글은 http://bit.ly/3XRoTPO를 기반으로 작성했습니다
간단한 영어만 되면 충분히 따라가실 만한 가이드입니다만, 혹시 한국어 가이드가 필요하신 분들을 위해 글을 남깁니다
Gitea 주소 부여
[제어판] - [로그인 포털] - [고급] - [역방향 프록시] - [생성]으로 갑니다
저번에 역방향 프록시를 설정했던 거 기억나시나요?
VIP 고객이 들어오면 미리 예약된 개인 맞춤실로 안내하는 게 역방향 프록시이니
http 3052 포트를 타고 오면 gitea.agosdev.synology.me로 안내해 주는 설정을 추가해 줍니다
- 역방향 프록시 이름 : Gitea(원하시는 이름 넣어주세요~)
- 소스
- 프로토콜 : https
- 호스트 이름 : 앞에는 원하시는 이름 넣어주시고 점찍은 후에 발급받은 DDNS 주소 넣어주세요
- 포트 : 443
- HSTS 활성화 : 체크!
- 대상
- 프로토콜 : http
- 호스트 이름 : localhost
- 포트 : 3052
입력해 주시고 아직 저장은 하지 말아 주세요
[사용자 지정 머리글] 탭에 가서 [생성] - [WebSocket]을 선택하시면 알아서 값이 나옵니다
그대로 저장 눌러주세요
HTTP 옵션 설정
[제어판] - [네트워크] - [연결성]에 가서 [HTTP/2 활성화] 체크!
이번에는 [보안] - [고급] - [HTTP 압축 활성화] 체크!
Gitea 설치
이제 [파일 스테이션]으로 가서
docker 폴더 내부에 gitea 폴더를 만들어 주겠습니다
그 아래에 다시 data와 db 2개의 폴더를 만들게요
이제 http://시놀로지IP주소:9000에 접속해 Portainer로 이동하겠습니다
Home 화면에 있는 저 모양을 클릭!
좌측에 [Stacks] 탭에서 [+Add stack]을 눌러줍니다
보이는 화면에서 Name에는 gitea(원하는 이름 넣어주세요) 기입해 주시고
[Web editor] 선택해 주신 후에
Web editor란에 아래 내용을 복사 붙여 넣기 해주시면 됩니다
version: "3.9"
services:
db:
image: postgres
container_name: Gitea-DB
hostname: gitea-db
security_opt:
- no-new-privileges:true
healthcheck:
test: ["CMD", "pg_isready", "-q", "-d", "Database", "-U", "user"]
timeout: 45s
interval: 10s
retries: 10
user: 1026:100
volumes:
- /volume1/docker/gitea/db:/var/lib/postgresql/data
environment:
- POSTGRES_DB=gitea
- POSTGRES_USER=giteauser
- POSTGRES_PASSWORD=giteapass
restart: always
web:
image: gitea/gitea:latest
container_name: Gitea
hostname: gitea
security_opt:
- no-new-privileges:true
healthcheck:
test: wget --no-verbose --tries=1 --spider http://localhost:3000/ || exit 1
ports:
- 3052:3000
- 2222:22
volumes:
- /volume1/docker/gitea/data:/data
- /etc/TZ:/etc/TZ:ro
- /etc/localtime:/etc/localtime:ro
environment:
- USER_UID=1026
- USER_GID=100
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=gitea-db:5432
- GITEA__database__NAME=gitea
- GITEA__database__USER=giteauser
- GITEA__database__PASSWD=giteapass
#- GITEA__mailer__ENABLED=true
#- GITEA__mailer__FROM=
#- GITEA__mailer__MAILER_TYPE=smtp
#- GITEA__mailer__HOST=
#- GITEA__mailer__IS_TLS_ENABLED=true
#- GITEA__mailer__USER=
#- GITEA__mailer__PASSWD=
restart: always
※여기서 USER_UID와 USER_GID는 각자의 값으로 변경해주어야 합니다
이 값을 알아보는 방법은 이 글을 참고해서 알아봐 주세요
알아낸 값으로 값을 변경해 주신 후에
[Deploy the slack]을 누르면 Gitea가 설치됩니다
잘 됐다면 우측 상단에서 알림을 볼 수 있습니다
설치가 잘 된 것 같으니 마지막으로 외부포트를 좀 정리해 보도록 할게요
같은 와이파이 내에서 gitea를 쓰는 건 이상이 없었는데
밖에서 gitea로 접속하려니 꼬이는 일이 있었어요
저와 같은 설정으로 진행을 하셨다면
- 로컬포트 2222 → 컨테이너 포트 22
- 로컬포트 3052 → 컨테이너 포트 3000
가 연결되어 있을 거예요
만약 다른 설정으로 설치를 진행하셨다면
DSM에 [Docker]로 들어가서
[컨테이너] - [Gitea]:더블 클릭! 해주세요
그럼 현재 Docker에서 굴러가고 있는 Gitea의 정보가 나옵니다
여기서 포트 설정이 어떻게 되어 있는가 보시고
공유기 관리자에 가서 동일한 옵션으로 포트를 열어주세요
포트를 연다는 말이 어떤 말인지 모르시겠다면
2023.01.19 - [NAS] - 사내 NAS 도입 (7) - 포트포워딩, DDNS, Let's Encrypt 인증서
이 글의 포트포워딩 부분을 참고하세요!
Gitea 설정
브라우저를 열고 주소창에 https://gitea.역방향프록시설정값.synology.me를 쳐주세요
맨 위에 Gitea 주소 부여를 위해 역방향 프록시에서 설정해 줬던 주소를 입력하시면 됩니다
여기까지 설치가 잘 됐다면 아래처럼 Gitea의 첫 설정 페이지를 볼 수 있습니다
여기서 위쪽의 [Database Settings]는 건들지 않아도 됩니다
아래로 쭉 스크롤해서
[General Settings]에서 [Site Title]에 여러분이 원하는 이름 넣어주시고
[Gitea Base URL]에 저희가 주소창에 쳤던 주소인 https://gitea.역방향프록시설정값.synology.me를 입력하시고
[Install Gitea]를 눌러주세요!
눌렀을 때 이런 페이지가 보는 건 정상입니다
다시 새로고침 해주시면 아래 같은 화면이나
(색깔은 브라우저 테마에 따라 다릅니다)
로그인하라는 페이지가 나올 텐데
저희는 아무런 계정도 없으니 만들어 보겠습니다
※첫 번째로 만드는 계정이 관리자 계정입니다!
- Username에 원하는 ID
- Email Address에는 사용하시는 이메일
- Password에 원하는 값
[Register Account]를 눌러주세요
뭔가 덜 복잡한 Github 같은 화면이 나오면 이제 사용할 준비가 끝난 겁니다!👏👏👏
Gitea 사용해 보기
우측 상단에 [+] - [New Repository]를 클릭
새로운 Repository를 만들어보죠
Repository Name, Description 적어주시고
Initialize Repository 체크✅
[Create Repository] 눌러주시면 생성 완료!
이제 레포지토리를 수정해 보죠
저는 test 폴더를 하나를 미리 만들어뒀습니다
사용하시는 터미널 아무거나 가셔서
경로 맞춰주시고 git clone 해주시면 됩니다
클론이 잘 됐다고 나오네요!
README.md 파일을 수정하고 다시 커밋, 푸시까지 해보겠습니다
저는 이렇게 내용을 바꾸고 저장했습니다
흔히 하던 대로 깃 과정을 거치고 push를 하게 되면
로그인 창이 나오게 됩니다
여기에는 아까 만들었던 아이디와 비번을 입력하면 됩니다
로그인이 정상적으로 이루어지면 push가 됩니다
이제 Gitea의 페이지에서 확인해 보죠
잘 반영이 됐네요!
이제부터는 알던 대로 Git 서비스를 사용하시면 됩니다👍
이렇게 로컬 컴퓨터와 시놀로지 내부의 도커 상에서 돌아가는 Gitea의 연동을 마쳤습니다
여기까지 세팅만 하셨어도 셀프 호스트 깃 서비스를 사용하기에는 손색이 없죠
다만 저희 회사는 좀 특이한 걸 요구하는 상황입니다
로컬 컴퓨터와 Gitea의 연동이 아니라 시놀로지 하드 드라이브 내부에서 직접 Git을 사용하는 것
이걸 위해서 몇 가지 세팅을 더 해주도록 하겠습니다
도움이 됐으면 좋겠습니다
질문, 지적 댓글 남겨주세요
좋은 하루 되세요😉
'NAS' 카테고리의 다른 글
NAS 정보 - 시놀로지 공유폴더 네트워크 드라이브 연결 (2) | 2023.02.06 |
---|---|
NAS 정보 - 시놀로지 Windows 탐색기에서 접근하기 (0) | 2023.01.26 |
NAS 정보 - 시놀로지 UID, GID 알아내기 (0) | 2023.01.25 |
사내 NAS 도입 (9) - Docker, Portainer 설치 (0) | 2023.01.25 |
사내 NAS 도입 (8) - 역방향 프록시 (0) | 2023.01.19 |