「みんなの翻訳」は、世界中の文書をみんなで協力して翻訳するサイトです。

みんなの翻訳ロゴ
ブクタブ
翻訳サイト

カテゴリ一覧

このサイトについて 新規登録はこちら お試し翻訳

一覧

2017/07/28

メンテナンス終了のお知らせ

2017/7/25-2017/7/28に実施したメンテナンスは、2017/7/28/14:20に終了いたしました。 ご協力をいただき、ありが…

List

hanako

English⇒Japanese

Hnoss

English⇒Japanese

shikimi

English⇒Japanese

sysInfo

English⇒Japanese

ホーム > 翻訳記事

翻訳記事

【GitLab 公式 を訳してみた】GitLab RunnerをDockerのサービスとしてインストールする

  GitLab Runner>GitLab Runnerをインストールする>Dockerコンテナにインストールする
 

  GitLab RunnerはDockerコンテナ内にインストールすることが可能です。

 
 まずはDockerイメージをインストール、初期設定をほどこす。

  1.Dockerをインストールします。

======================
curl -sSL https://get.docker.com/ | sh
======================

  2.gitlab-runnerコンテナを作成します。
 このあと、様々なコンフィグやリソースを活用していく予定なので、ここでコンフィグ・ボリュームをマウントさせることが必要です。

======================
docker run -d --name gitlab-runner --restart always \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
-v /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
======================
  注:¥はバックスラッシュの誤変換です。

  OSXをお使いの場合は、「/srv」とされている部分が「/Users/Shared」に変更になります。

 

  もう1つ、コンフィグコンテナをカスタムデータボリュームにマウントさせる方法もあります。

======================
docker run -d --name gitlab-runner-config \
  -v /etc/gitlab-runner \
  busybox:latest \
  /bin/true

docker run -d --name gitlab-runner --restart always \
  --volumes-from gitlab-runner-config \
  gitlab/gitlab-runner:latest
======================
 注:¥はバックスラッシュの誤変換です。
 

  ランナーを運用する手段として、Dockerの利用を考えているのでしたら、Dockerのソケットをマウントさせる必要があります。次のように設定してください。

 ======================
docker run -d --name gitlab-runner --restart always \
-v /var/run/docker.sck:/var/run/docker.sock \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
gitlab/gitlab-runner:latest
======================
 注:¥はバックスラッシュの誤変換です。
 

  3.ランナーを登録する

  GitLab Runnerについて、皆さんからよくお寄せいただいている質問は、こちらの FAQ に掲載されています。

 

  アップデートの方法

  1.次のコマンドで最新バージョンをダウンロードします。

======================
docker pull gitlab/gitlab-runner:latest
======================

  2.現在使用しているコンテナを停止して、削除します。

======================
docker stop gitlab-runner && docker rm gitlab-runner
======================

  3.最新のコンテナを起動させます。

======================
docker run -d --name gitlab-runner --restart always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
gitlab/gitlab-runner:latest
======================

  注:データボリュームのマウントも、ランナーと同じようにやり直さなくてはなりません。(『-v /srv/gitlab-runner/config:/etc/gitlab-runner』『--volumes-from gitlab-runner』などのコマンドを使いましょう。)


 

  SSLサーバー認証を導入する

  gitlab-runnerコンテナ同士を互いに連携させるには、GitLab CIサーバーにSSL証明書を付けておく必要があります。

  たとえば、「gitlab/gitlab-runner」イメージに、SSL証明書をつけてディレクトリ「/etc/gitlab-runner/certs/ca.crt」に保管したとします。
 (証明書を保管するディレクトリは、『-e "CA_CERTIFICATES_PATH=/DIR/CERT"』と設定オプションに記入することで設定)

  「ca.crt」ファイルをコピーして「certs」ディレクトリに貼り付けます。このディレクトリはデータボリュームや、データコンテナに置かれていることがほとんどです。
 「ca.crt」ファイルは、rootディレクトリに「certs」ディレクトリを作成しておいて、そこに収容しておくのが望ましいとされます。その方が、他のgitlab-runnerに正常なランナーであると認められやすいからです。
 rootディレクトリに存在しているファイルは、コンテナ起動時点で読み込みが開始されます。システムを運用する上で重要なものはここで保存しておくと、再起動をかけたときに行方不明になったり、起動しなかったりするミスを防げます。

 

  Alpine Linux系イメージを使う

  メモリ使用量を節約したいときには、Alpine Linux系のコンテナイメージを使うとよいでしょう。

======================
gitlab/gitlab-runner    latest              3e8077e209f5        13 hours ago        304.3 MB

gitlab/gitlab-runner    alpine              7c431ac8f30f        13 hours ago        25.98 MB
======================

  Alpine Linuxイメージは、Dokcerとして使うようにしか設計されていないので、あくまで「ランナーを手軽に使用するため」の手段としてお考え下さい。

  先ほど登場した「gitlab/gitlab-runner:latest」イメージは、Ubuntu 14.04 LTSをもとに開発されています。


 

  SELinuxを使う

  一部ディストリビューション(CentOS, RedHat, Fedora)ではセキュリティ面を考慮して、デフォルトでSELinuxを使うように設定されているものがあります。

  これをランナーでも利用する場合は、次のような設定が必要です。

  1.Dockerエクゼキュータを使用するときには、通常「/var/run/docker.sock」にアクセスができる状態にないと、コンテナでビルドすることができません。
しかし、SELinuxを使用する場合には、「/var/run/docker.sock」にアクセスする際に権限認証が必要になります。
 これを円滑にするために、「selinux-dockersock」をインストールして、次のリンク先に書かれている方法を試してみてください。( https://github.com/dpw/selinux-dockersock
 

  2.「mkdir -p /srv/gitlab-runner/config」というコマンドで、固定ディレクトリを作成します。

  3.dockerを、ボリュームの「:Z」で起動します。

======================
docker run -d --name gitlab-runner --restart always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /srv/gitlab-runner/config:/etc/gitlab-runner:Z \
gitlab/gitlab-runner:latest
======================

  SELinuxとDockerボリュームとの関係性について、さらに詳しい情報は、こちらの記事に掲載されています。
 ( http://www.projectatomic.io/blog/2015/06/using-volumes-with-docker-can-cause-problems-with-selinux/

 

 Edit this page

 

 

 
PDF
更新日:2017-12-04 17:24:35 Hnoss 0  del.icio.usに追加   はてなブックマークに追加   twitterに投稿   facebookでshare
[ 原文 ] https://docs.gitlab.com/runner/install/docker.html 原文ページプロジェクト並びにドキュメントファイルは、MIT Licenseのもと公開されています。(URL:https://gitlab.com/gitlab-com/gitlab-docs/blob/master/LICENSE) この記事の文章は、訳者の判断によりCreative Commons BY (version 3.0) を適用するものとします。
翻訳者ページをみる

この記事の翻訳者

Hnoss さんの翻訳記事

【GitLab 公式 を訳してみた】GitLab RunnerをFreeBSDにインストールする

GitLab Runner > GitLab Runnerをインストールする >FreeBSDにインストールする 注: FreeBSDでは、現在 ”開発最先端”とされているリリース を利用することも可能です。  GitLab …2017-12-13 17:21:41

GitLab CI にプッシュしたものを GitHubに出力する | from: Leow Kah Man - Tech Blog

 今僕は、GitLabでウェブサイトを公開するためにGitLab CIランナーを使っています。でも、今度はそれをGitHub pagesでも公開できるようにしてみたい。  もしも、ネットのコンテンツを…2017-12-11 23:59:39

僕がHugo静的サイト・ジェネレータをGitLabで使うときにしたCI設定 | from Leow Kah Man - Tech Blog

 週末にかけて、GitHubに構えていた私のブログをGitLabに移転しました。GitLabだとCIビルドが自動的にできるところが便利です。  僕はGitLabのレポジトリにNodeJS Dockerイメージを構…2017-12-11 23:58:18

【GitLab 公式 を訳してみた】GitLab Runnerをインストールする

GitLab Runner > GitLab Runnerをインストールする  GitLab Runnerは、GNU/Linux、 macOS、 FreeBSD、 Windowsでインストールと使用することが可能です。  インストールには3つ…2017-12-06 17:57:33