티스토리 뷰
이 글은 위의 내용을 Synology NAS에서 적용하는 방법을 작성하였습니다.
요약하면, Git에서 clone 등을 할 때 주소의 프토로콜을 http:// 로 지정하는 방법을 안내합니다. (포트 지정과 함께)
이 글은 Synology NAS DS1821+ 기준으로 작성되었습니다.
요구 사항
- Web Station 패키지 설치
- Apache HTTP Server 2.x 패키지 설치
- SSH 활성화
먼저 ssh 등을 통해 나스에 접속합니다.
$ cd /usr/local/etc/apache24/sites-enabled
$ sudo vi git.conf
Apache의 sites-enable 경로(버전에 따라 apache24가 아닌 다른 이름일 수 있음)로 이동한 후,
conf파일을 생성 및 내용을 추가합니다.
SetEnv GIT_PROJECT_ROOT /volume1/git SetEnv GIT_HTTP_EXPORT_ALL ScriptAlias /git/ /volume1/@appstore/Git/libexec/git-core/git-http-backend/ <Files "git-http-backend"> AuthType Basic AuthName "Git Access" AuthUserFile /volume1/git/.htpasswd Require expr !(%{QUERY_STRING} -strmatch '*service=git-receive-pack*' || %{REQUEST_URI} =~ m#/git-receive-pack$#) Require valid-user </Files> |
GIT_PROJECT_ROOT : Git Repository 경로로 적절히 변경합니다.
ScriptAlias : Git 패키지 설치 경로로, 설치된 volume을 확인하여 적절히 변경합니다. (단일 볼륨이면 일반적으로 volume1)
AuthUserFile : Git Repository 경로로 적절히 변경합니다.
이제 Git Repository 경로의 루트에서 .htpasswd 파일을 생성하고, 아래의 내용을 넣습니다.
Options +Indexes |
이것으로 파일 세팅은 끝났습니다.
이제 웹 브라우저에서 Synology DSM으로 접속하여 Web Station 앱을 엽니다.
좌측 탭의 웹 서비스 포털을 클릭하고, 우측에서 생성 버튼을 클릭합니다.
포털 만들기 마법사에서 유형을 가상 호스트로 클릭합니다.
포털 유형을 포트 기반으로 선택하고, 포트를 입력합니다. 그리고 다음 버튼을 클릭합니다.
문서 루트에 Git Repository 루트 경로를 지정하고, HTTP 백엔드 서버를 설치된 Apache로 선택합니다. 그리고 다음 버튼을 클릭합니다.
특별히 설정할 값이 없으므로 기본 값으로 두고 다음버튼 및 생성버튼을 클릭하여 완료합니다.
이제 패키지 센터 앱을 열고, Web Station을 재시작하기 위해 중지를 합니다.
경고창이 뜨면 모두 예를 눌러 종료합니다.
중지가 되면, 다시 Web Station의 실행 버튼을 클릭하여 시작을 해 줍니다.
Web Station이 중지가 되면 Apache HTTP Server도 함께 중지가 되므로 Apache HTTP Server도 실행버튼을 클릭해서 실행시켜 줍니다.
모두 완료되었습니다.
다시 Web Station 앱으로 돌아와서 이상이 없는지 확인합니다.
기본 서버 상태와 웹 서비스 포털 상태가 보통으로 되어있다면 모두 잘 된 것입니다.
만약 이상상태 라면, Apache HTTP Server가 시작이 되어있는지, 또는 이 글의 처음부분인 파일 설정이 잘 되었는지 다시 확인해 봅니다.
이제 모두 준비가 끝났으므로 git clone 등으로 잘 되는지 확인해 봅니다.
$ git clone http://192.168.0.10:3080/git/myproject.git
Cloning into 'myproject'...
remote: Enumerating objects: 1379, done.
remote: Counting objects: 100% (1379/1379), done.
remote: Compressing objects: 100% (1319/1319), done.
remote: Total 1379 (delta 936), reused 158 (delta 57), pack-reused 0R
Receiving objects: 100% (1379/1379), 1.40 MiB | 11.93 MiB/s, done.
Resolving deltas: 100% (936/936), done.
'SW개발 > 버전 관리' 카테고리의 다른 글
Apache(아파치)로 Git(깃)에 HTTP URL 주소 적용 (0) | 2023.03.17 |
---|---|
Windows(윈도우) SourceTree(소스트리) 오류: fatal: protocol error: bad line length character 해결 (0) | 2022.12.21 |
Docker(도커) elleflorio-svn-server에서 sh(쉘) 접속 및 svnadmin 사용 (0) | 2022.07.20 |
svnadmin Repository(저장소)를 dump(백업) 및 load(복구) 이전하기 (0) | 2022.07.19 |
TortoiseSVN Relocate Repository(저장소) 주소 변경하기 (0) | 2022.07.19 |