LoginSignup
3
2

More than 3 years have passed since last update.

GitLab CIを動作させる

Posted at

これまでGitLabを自PCで運用してきたのですが、CI/CD機能は未使用でした。
CI/CD機能を使用するためにはいくつかの手順が必要とのことで、調べながら作業して、なんとかCI/CD機能を動かすことができました。
ここでは、CI/CD機能を動かすまでに行ったことを、忘れないようにするために記録しておきます。
今回使用した試行環境は以下のとおりです。

  • OS:Ubuntu 16.04 LTS
  • GitLab:Dockerにて、sameersbn/gitlab:11.10.1イメージで運用

1. GitLab Runnerのインストール

公式サイトの「Install GitLab Runner manually on GNU/LinuxのUsing binary file」に記載されている内容にしたがって、GitLabが稼働している実マシンに、GitLab Runnerをインストールします。

  1. バイナリをダウンロード
    Proxy環境下では、必要に応じてcurlコマンドの-xオプション等を使用してProxy情報を指定します。
    Proxy設定については、こちらを参照ください。→ curlコマンドにてproxy設定

    sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
    
  2. バイナリに実行権限を付与

    sudo chmod +x /usr/local/bin/gitlab-runner
    
  3. GitLab CIユーザーを作成

    sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
    
  4. サービスとしてインストール

    sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
    
  5. サービスの実行

    sudo gitlab-runner start
    
  6. (おまけ)サービスが実行されているか確認

    sudo gitlab-runner status
    

2. GitLabへGitLab Runnerを登録

  1. GitLabでプロジェクトを開き、左側のメニューから 設定 > CI/CD を選択
  2. Runnerを展開して、Set up a specific Runner manually に記載されているURLトークンを記録
  3. Runnerの登録
    以下のコマンドで登録します。

    sudo gitlab-runner register
    
    • Please enter the gitlab-ci coordinator URL ... 上で記録した URL を入力
    • Please enter the gitlab-ci token for this runner ... 上で記録した トークン を入力
    • Please enter the gitlab-ci description for this runner ... Runnerの説明を適宜入力
    • Please enter the gitlab-ci tags for this runner ... タグを適宜入力
    • Please enter the executor ... docker を入力
    • Please enter the default Docker image ... CI実行環境として使用するDockerイメージ名を入力

3. ローカルのDockerイメージを使用するための設定

CI実行環境としてDockerを選択した場合、ローカルに用意したDockerイメージを使用させるためには、config.tomlへの設定が必要となります。
以下の情報をもとに設定します。なお、ローカルのDockerイメージではなく、Docker Hubのイメージを使用する場合は、この設定は関係ありません。

4. clone元を変更するための設定

今回試行した環境では、CI対象をcloneする際、http://localhost からcloneしてしまいました。
これを、localhostではなく、GitLabサーバーのアドレスを指定してcloneするように変更するためには、config.tomlへの設定が必要となります。
以下の情報をもとに設定します。

5. Dockerイメージを用意

CI実行環境として、独自のDockerイメージを使用する場合は、イメージを作成しておきます。
例えば、「Docker Hubで公開されているAlpine LinuxのDockerイメージをベースにして、OpenJDKとMavenが格納されたイメージを用意する」といったことが考えれます。

6. .gitlab-ci.ymlを用意

.gitlab-ci.ymlを用意して、プロジェクト配下に配置します。


ここまでで、一応、CI機能を動作させることができました。

-- 以上 --

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2