2021/12/31

Synology NASのGitLabでGitLab Pagesを有効化する

概要

SynologyのNASには,GitLabを動作させることができるモデルがあります. 既定ではGitLab Pagesは無効になっていますが,環境変数を設定することで有効にすることができます. 本記事では,この環境変数の設定例を紹介します.

開発環境

製品型番 DS918+
DSM 6.2.4-25556 Update 2
GitLab Version: 13.12.2-0073

前提条件

GitLabは,下記のように http://hogehoge.internal:30000/ でログインできるようにGitLabの環境変数とDNSサーバを設定済みとします.

可変
GITLAB_HOST hogehoge.internal
GITLAB_PORT 30000

設定方法

Gitlab Pages Access Control用の情報を取得する

下記リンクの説明を参照して,GitLabの管理者エリア > アプリケーションで設定を行います.

DNSサーバの設定を変更する

GitLab Pages用にAリソースレコードおよびAAAAリソースレコードを追加します.

名前 情報
名前 *.pages.hogehoge.internal.
情報 Synology NASのIPアドレス

GitLabを停止させる

環境変数を変更するので,GitLabを一時停止します.DSM上でGitLabはDockerコンテナとして動作しています. GitLabのDockerコンテナはDockerのUIからも停止できますが,GitLabは3つのDockerコンテナで構成されているので,私は念のためパッケージセンターのGitLabのメニューから停止するようにしています.

DSMにログインしてパッケージセンターを開き,「インストール済」タブからGitLabをクリックします.GitLabは実行中になっているので,「停止」をクリックしてこれを停止します. 「このパッケージを停止しますか?」と聞かれるので「はい」をクリックします.

パッケージセンター

Dockerコンテナの編集画面を開く

次にDokcerを開きます.「synology_gitlab」で始まる3つのコンテナが停止していることを確認して,「コンテナ」タブで「synology_gitlab」を選択した状態で「編集」をクリックします.

Docker

環境変数を設定する

「編集 - synology_gitlab」ウィンドウが開くので,下表の新規追加します. なお,SynologyのGitLabはsameersbn/docker-gitlabをベースにしているようですので,このリポジトリの説明が参考になりました.

編集 - synology_gitlab
可変
GITLAB_PAGES_ENABLED true
GITLAB_PAGES_DOMAIN pages.hogehoge.internal
GITLAB_PAGES_PORT 30000
GITLAB_PAGES_ACCESS_CONTROL true
GITLAB_PAGES_ACCESS_CONTROL_SERVER http://hogehoge.internal:30000/
GITLAB_PAGES_ACCESS_CLIENT_ID アプリケーションID欄に表示されている文字列
GITLAB_PAGES_ACCESS_CLIENT_SECRET 秘密欄に表示されている文字列
GITLAB_PAGES_ACCESS_REDIRECT_URI http://projects.pages.hogehoge.internal:30000/auth

GitLabを再開させる

再びパッケージセンターを開き,「インストール済」タブからGitLabをクリックします.GitLabは停止になっているので,これを再開します. 再開してからGitLabにが起動してアクセス可能になるまではしばらくかかります.

これでGitLab Pagesが有効になりました.管理者エリアのダッシュボードでGitLab Pagesにチェックボックスが入っていることを確認します.

0 件のコメント:

コメントを投稿