LoginSignup
6
6

More than 5 years have passed since last update.

WindowsのDocker ToolboxのRancherOSでRancherとConcourseを動かす

Last updated at Posted at 2018-04-28

職場がJenkinsすぎるんですが、JenkinsのUIがどうしても好きになれないのでConcourseを試そうと思いまして。
かといって、いきなり稼働中のサーバーにぶち込むのもアレなので、いったん練習のためにWindowsのDocker環境を構築し、試すことにしました。
ニッチすぎていいねが0かもしれないけど、そんなことは気にしない。
いいねなんて飾りです。偉い人にはそれがわからんのです。

はじめに

今回、Docker ToolboxをWindows上にインストールし、RancherOSを突っ込んでやります。
で、RancherOS上でRancherを稼働させ、ConcourseのPrivate Catalogを作成した後、Concourseを立ち上げます。

  • Docker Toolbox -> VirtualBoxを使って楽にDocker環境動かせるやつ。legacyとか言われてるけどこっちは貧乏なので仕方ない。
  • RancherOS -> Docker用のとても小さいOS。cloud-config使える。
  • Rancher -> コンテナを管理しやすくするやつ。でも2.0からはkubeだって...ピエェ!
  • Concourse -> Jenkins駆逐艦隊。見た目がナウい。CIツールは見た目が9割。

何故Docker for Windowsを使わないかって?
ボーイ、My Windows(ここ)はHome Editionだぜ...。1

Docker Toolbox入れる

インストールページに行ってexeおとして実行しましょう。

情報送信のチェックボックスはオフる。気にならないなら良いですが。
2018-04-28_12h27_07.png

インストールパスはお好みで。
2018-04-28_12h31_35.png

全部チェック。
2018-04-28_12h32_07.png

一番下にチェックを入れた方がよろしい模様。理由はググってください。
2018-04-28_12h44_04.png

あとはよしなに。

Dockerホスト作成

インストールが完了したら、DockerQuickstartTerminalを起動。
2018-04-28_15h26_28.png

DOS窓が開いてごちゃごちゃ出力されたのち、くじらが表示されればOK。
image.png

以降のオペはここで実行。

Dockerホストの確認と停止

まず、現状のDockerホストを確認します。

$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS
default   *        virtualbox   Running   tcp://192.168.99.100:2376           v18.03.1-ce

デフォルトがいますが、今回はRancherOSにしたいので、取りあえず止めます。

$ docker-machine stop default
Stopping "default"...
Machine "default" was stopped.

RancherOSホストの作成

次に、以下のコマンドでRancherOSをホストに追加します。

$ docker-machine create -d virtualbox \
--virtualbox-boot2docker-url https://releases.rancher.com/os/latest/rancheros.iso \
--virtualbox-memory 4096 \
--engine-opt mtu=1402 \
ranchang
  • -d -> driver。virtualbox使うので。
  • --virtualbox-boot2docker-url -> boot2docker(Docker用の軽量Linuxディストリ)のイメージを指定。ここにRancherOSを指定してやる。
  • --virtualbox-memory -> ホストに割り当てるメモリ。デフォルトの1024だとRancherが動かないので、取りあえず4096に増やしてやる。
  • --engine-opt mtu=1402 -> mtuを指定してやります。これをやらなかったら、mtuの設定がホストとコンテナでずれて通信が死んだ...ような。

最後のranchangはホスト名なのでなんでもいいです。

では入ってみましょう。
ログインできればOKです。

$ docker-machine ssh ranchang
[docker@ranchang ~]$

Rancherのインストール

Rancher Serverのコンテナを作成します。
Dockerコマンドが何を意味しているのかはググってもらうとして...。

[docker@ranchang ~] docker run -d \
--restart=unless-stopped \
-p 8080:8080 \
--name=rancher-server \
--hostname=rancher-server \
rancher/server

(略)

[docker@ranchang ~]$ docker container ls
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                              NAMES
425008c0dfcb        rancher/server      "/usr/bin/entry /u..."   43 seconds ago      Up 42 seconds       3306/tcp, 0.0.0.0:8080->8080/tcp   rancher-server

インストールが終わったら、ホストIPの8080ポートにアクセスします。
以下が見えたらOK。チェックボックスのチェックを外してGot itします。
(この匿名送信系はデフォルトで無効にしてほしい...)

2018-04-28_16h24_35.png

ホスト追加しろといわれてるので、します。
2018-04-28_16h31_53.png

IPとかあってたらそのままSave。
2018-04-28_16h33_01.png

以下の画面が表示されるので、5の右のアイコン?をクリックする。
これで、左に表示されているコマンドがクリップボードにコピーされる。
2018-04-28_16h35_59.png

コピーしたコマンドをranchang上で実行する。
実行したのち、Rancherのページの上部メニューで「INFRASTRUCTURE」->「Hosts」を選択。
以下のように、ホストが登録されていればOK。

2018-04-28_16h41_24.png

ConcourseのPrivate Catalogを作る

カタログって何だよって人はこれ見てください。
要するに、Rancherで「あのサービス使いたいなぁ」と思った時にボタン数発でサクッとその一連のサービスを立ち上げるための設計書みたいなものです。

公式のdocker-composeを参考に作成したPrivate Catalogがこちらです。
後で使うので、以下の図のところでURLをこぴっておいてください。
2018-04-28_19h59_41.png

では、Private Catalogを追加していきます。
Rancherのページの上部メニューより「CATALOG」->「ALL」を選択。
表示された画面の右側の「Manage」をクリックします。

2018-04-28_19h39_19.png

「Add Catalog」をクリックするとリストの下に入力できる箇所が増えるので、左にカタログのグループ?名、真ん中に使いたいカタログのgitのURL(今回は先ほどこぴったもの)、右にそのカタログのブランチ名を入力して、「Save」をクリック。

2018-04-28_19h53_26.png

うまく登録できれば、CATALOGメニューにcustomが増えているはず。
勿論、ご自身でPrivate Catalog作るに越したことはないです。

Concourseの設定と起動

Catalogは準備できたので、いよいよ起動します。

まず、Concourse起動時の設定を行うので、ConcourseのCatalogのViewをクリック。
2018-04-28_20h06_39.png

ページ下部にConfiguration Optionsがあるので、よしなにいじったあと、更に下部の「Launch」をクリックします。
尚、Concourseは本来8080がデフォルトポートなのですが、Rancherと見事にバッティングしてるので、8080は使わないでください。
2018-04-28_20h07_42.png

Launchクリック後、自動的にStackのページに飛びます。
ここのステータスがすべてActiveになった後、おもむろにポート番号のリンクをクリックし、
2018-04-28_20h12_11.png

Concourseの画面2が出たら成功です。Optionsで設定したユーザー/パスワードが有効かをログインして確認してみてもよいでしょう。
2018-04-28_20h17_03.png

Concourseの使い方はスコープ外ですので、この辺で失礼いたします。


脚注

  1. Docker for windowsはHyper-Vを利用するので、貧乏Homerは指を咥えて見ているしかないんだよ。 

  2. ペンギンの存在感が圧倒的過ぎて大体目に付く。 

6
6
2

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
6
6