A certain engineer "COMPLEX"

開発メモ その49 Red Hat Enterprise Linux 7.2にshipyardをインストールする

Problem


開発メモ その48 Red Hat Enterprise Linux 7.2にDockerをインストールするにて、Dockerをインストールしました。
けど、自分はCLIは苦手だし、コマンド覚えるのが嫌です。
GUI万歳!!!

というわけで管理ツールを導入します。
Dockerの管理ツールはいくつかありますが、Webで管理できるのは下記の2点

  • DockerUI
  • shipyard

があります。
今回は多機能なshipyardを導入します。

注意

下記のページにて、/var/run/docker.sockをマウントすることに危険性を説いています。

# 注意本件記事ですが、私の不適切な行動(拾ったスクリプトを検証なく走らせる)が原因です。「dockerは(特に何もしなくとも)危険」との誤解を皆様に与えた点、ご迷...

特にshipyardについても言及しています。
対応策が語られていないのですが、そういうものだと割り切ります。
このあたり、本番環境に導入するというのは自己責任ですね。

Solution


インストール方法自体は、非常にシンプルです。


$ curl -s https://shipyard-project.com/deploy | bash -s

ですが、上の方法だと、下記のメッセージが表示されてしまい、実行できませんでした。


/usr/bin/docker-current: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See '/usr/bin/docker-current run --help'.
Deploying Shipyard
-> Starting Database
/usr/bin/docker-current: Cannot connect to the Docker daemon. Is the docker daemon running on this host?

dockerのサービスデーモンが実行されていないのでは?というメッセージですが、sudo service docker statusを実行すると正しく動作していることは示しています。
ですが、docker psだと、同じようにCannot connect to the Docker daemon. Is the docker daemon running on this host?を表示されます。
そこでふと思ったのが、sudoしたらどうなる?と思って実行したら、sudo dcker psが成功しました。
なので、先述のインストールコマンドも


$ curl -s https://shipyard-project.com/deploy | sudo bash -s

することで動作しました。
気づくのに時間がかかりました。

ここで注意するのは、上のコマンド、先述の/var/run/docker.sockをマウントするコマンドが実行される点です。
これだけは認識しておいてください。

さて、上のコマンドでDockerにコンテナが追加されました。
shipyard自体がコンテナで実行されるアプリケーションです。
それなのに、自分以外のコンテナの状態を管理するツールになり得るのは、/var/run/docker.sockをマウントして色々やっているからとのことです

インストールが完了すると、


Waiting for Shipyard on 端末のIP:8080

Shipyard available at http://<端末のIP>:8080
Username: admin Password: shipyard

と表示されます。
パスワードはデフォルトは危険なのですぐに変えましょう。

外部のブラウザから、http://<端末のIP>:8080でアクセスすると、下記の美しいログイン画面が表示されます。

ログイン後の画面。

以上です。

コメントを残す

メールアドレスが公開されることはありません。

%d人のブロガーが「いいね」をつけました。