DevOps/Git

Window Server에 Gitea 설치하기(PATH오류 해결)

ServerPhantom 2025. 4. 7. 14:13

안녕하세요!! 오늘은 Gitea 설치에 관해서 이야기를 해볼까 해요

 

내부 Git 서버가 필요해 고민하던 중 GitLab은 너무 무겁고 Window에 세팅하기가 너무 복잡했어요. 그러다 찾은 것이 바로 Gitea!

 

설치가 단순하고 자원도 거의 안 쓰는 데다, 기본적인 Git 서버 기능은 전부 제공되기에 사내 개발서버용 Git 플랫폼으로 Gitea를 선택했습니다

 

이제 Window Server에 Gitea를 설치하고 SQLite로 간단하게 DB를 구성해 내부 Git 서버를 만드는 과정을 정리해 볼게요.

운영용이라기보다 개발용/사내용 Git 서버가 필요한 분들께 도움이 될 수 있는 글입니다.

 

Gitea란 무엇인가?

Gitea는 오픈소스 경량 Git서버입니다. GitHub, GitLab과 비슷한 기능을 제공하지만 훨씬 가볍고 실행이 빠릅니다.

특징으로는 

  • 실행 파일 하나로 서버 구동
  • Windows/Linux/Mac 지원
  • SQLite/MySQL/PostgreSQL 등 다양한 DB 연동 가능
  • 웹 UI 제공(PR, 이슈, 이슈트래킹, 조직, 사용자 관리 등)
  • 내부망에서 운영하기 적합

등이 있어요

 

설치 환경

우선 제가 설치 진행한 환경은 다음과 같습니다.

  • OS: Windows Server 2022 Standard
  • GItea 버전 : 1.23.6
  • DB : SQLite(파일 기반, 경량 운영 목적)
  • GIT : Git for Windows 설치 필요 

Gitea 설치 순서

1. Gitea 공식 사이트에서 gitea-xxx-windows-4.0-amd64.exe 실행 파일 다운로드 진행

 

2. 다운로드한 파일을 C 또는 D드라이브에 Gitea 폴더 생성 후 이동시키기 (D:\Gitea)

 

3. Gitea 실행

 

 

4. 브라우저에서 http://localhost:3000 접속

포트는 기본으로 3000이 설정되어 있어요

그래서 localhost:3000으로 접속을 하게 되면 설치를 위한 설정 항목이 나오게 됩니다.

데이터베이스 유형의 경우는 SQLite로 선택하였는데 이유는 gitea에서 저장이 필요한 데이터 자체가 크지 않을뿐더러 많은 동시 접속이 필요한 환경이 아니라 제일 가볍게 사용할 수 있는 SQLite로 선택하게 되었습니다.

 

 

환경설정

설치 진행 중 아래쪽을 보면 세부 설정 항목이 존재합니다.

 

항목들의 내용을 간단하게 살펴보면

  • 로컬 모드 켜기 : 내부망 서비스로 사용(외부 API 차단)
  • Gravatar 사용안 함 : 외부 서비스임으로 사용 안함 체크
  • OpenID 로그인 사용 : 구글과 같은 외부 인증 로그인 사용인데 폐쇄적을 사용할 목적임으로 체크해제
  • 사용자 등록 비활성화 : 위와 같은 이유로 사용자 등록은 관리자를 통해서만 생성되도록 설정

이 정도로만 정리를 해놨네요! 

 

그리고 관리자 계정만 설정해 준 뒤에 Gitea 설치하기 진행

 

을 했더니 오류가 뜨네요?

 

exec:"git": executable file not found in %PAHT% 오류 해결 방법

 

이 오류 같은 경우는 git이 존재하지 않거나 PAHT가 정상적으로 등록되지 않아 생기는 오류입니다.

저는 새로 생성된 서버에 냅다 Gitea부터 설치를 진행해서 서버에 git이 존재하지 않았어요.. 성격 급한 사람..

 

빠르게 git을 설치해준 뒤에 환경변수에 등록해 줍니다.

C:\Program Files\Git\cmd

시스템 > 고급 시스템 설정 > 환경 변수에 등록을 해주면 되는데 등록 후에 Gitea를 재실행해줘야 해요.

 

재실행 후 다시 설치를 진행하면 정상적으로 설치가 완료됩니다.

 

이제 우리 서버가 리부팅될 때마다 gitea를 직접 실행시키려고 하면 너무 번거롭잖아요?

 

부팅 시 자동 실행 설정

실행파일이 존재하는 폴더로 이동한 뒤 아래처럼 CMD에 입력해 주면 되는데 여러분들은 이렇게 똑같이 작성하면 안 돼요.

sc.exe create Gitea start= auto binPath= "D:Gitea\gitea-1.23.6-gogit-windows-4.0-amd64.exe"

sc.exe create Gitea start= auto binPath= "D:Gitea\gitea-1.23.6-gogit-windows-4.0-amd64.exe"

 

본인이 설치했던 버전과 경로에 맞춰서 작성을 해야겠죠?

 

그리고 옵션 내용을 확인해 보면 등호와 값 사이에는 공백이 한 칸 있어야 합니다. 이거 때문에 몇 번 오류 난 경험이 있어요 주의해주세요!

sc <서버>create [서비스 이름] [binPath= ] <옵션1> <옵션2>...	
	
참고: 옵션 이름은 등호(=)를 포함합니다.	
      등호와 값 사이에는 공백이 한 칸 있어야 합니다.	
 type= <own|share|interact|kernel|filesys|rec|userown|usershare>	
       (default = own)	
 start= <boot|system|auto|demand|disabled|delayed-auto>	
       (default = demand)	
 error= <normal|severe|critical|ignore>	
       (default = normal)	
 binPath= <.exe 파일에 대한 BinaryPathName>	
 group= <LoadOrderGroup>	
 tag= <yes|no>	
 depend= <종속성(슬래시(/)로 구분)>	
 obj= <AccountName|ObjectName>	
       (default = LocalSystem)	
 DisplayName= <표시 이름>	
 password= <암호>

 

 

여기까지 진행하면 gitea 설정이 완료됩니다. 

 

 

 

 

 

 

그럼 이만.