Table of Contents
Wikijs 에 컨텐츠는 로컬 파일시스템에 저장이 된다. 하지만 이것을 Gitlab 에 저장할 수 있다. 이게 가능한 이유는 Wikijs 의 컨텐츠는 마크다운으로 작성되기 때문이다.
이 문서는 Wikijs 에 백엔드로 Gitlab 을 연결하는 방법에 대해서 기술 한다.
환경
Gitlab 버전: 19.0.2-ce.0
Wikijs: 2.5 (도커로 설치)
Gitlab 설정
먼저, Gitlab 에 접근하는 방법으로 권장하는 방법에는 Access Token 이다. 이 토큰은 프로젝트별, 계정별로 가능한데 여기서는 프로젝트내에 Access Token 을 이용할 것이다. 따라서 우선 프로젝트를 생성한 다음에 Settings -> Access Tokens 을 발행해야 한다.
- token name: wikijs
- Expireation date: 날짜를 지우면 무제한이 된다.
- Select a role: Developer
- Select scopes: read_repository, write_repository
Wikijs 설정
이제 Wikijs 에서 설정을 해줘야 한다. 관리자 페이지로 이동한 후에 Storage -> Git 을 클릭하면 설정 페이지가 나온다.
여기서 UI 가 헷깔리는데, SSH 방식과 Basic 방식 두가지를 모두 표시하고 있다. SSH 를 선택하면 그것만 나왔으면 좋았겠지만, 그렇지 않아 많이 헷깔린다. 다음과 같이 설정한다.
- Authentication Type: basic
- Repository URI: gitlab 저장소 URL
- Branch: wikijs
- Username: 빈칸으로 놔둔다.
- Password /PAT: Gitlab 에서 발행한 Access Token 을 입력
- Default Author Email: 커밋때 사용할 정보
- Default Author Name: 커밋때 사용할 정보
- 보관소에다가 저장하기
여기서 Branch 에서 main 을 하게 되면 되지 않는다. 왜냐하면 Gitlab 에서 main 은 Branch Protect 되어 있기 때문이다. 물론 이것을 해제하면 되지만 권장하지 않는다.