DockerでRundeckをちょっとだけ試してみたかった


お久しぶりです。
最後にRundeckの記事を書いてから一年以上経っていたようです。
長いようで短かった一年でした。別にエモーショナルなアレではないですが。

応用的な記事は多分いつか書きますがセットアップ的なことはDocker使えば簡単にできそうなのでやってみたいと思います。
ちゃんと運用するという話ではなく少し使ってみたいなぁみたいなライトな人が対象です。

(dockerのインストールは済んでいる前提で)
今回はこのコンテナを使います。

非Linuxの人はdocker-machineを起動する必要があります。(MacとかWindowsとかね)
とりあえずMacの人は思考停止で以下を2コマンドを入力しましょう。

$ docker-machine restart default
Restarting "default"...
Starting "default"...
(default) Check network to re-create if needed...
(default) Waiting for an IP...
Machine "default" was started.
Waiting for SSH to be available...
Detecting the provisioner...
Waiting for SSH to be available...
Detecting the provisioner...
Restarted machines may have new IP addresses. You may need to re-run the `docker-machine env` command.

$ eval "$(docker-machine env default)"

2つ目のevalは環境変数の設定です。シェルを変えた場合は毎回やってください。
ここまではいいですね。

次にコンテナのDLをします。

$ docker pull jordan/rundeck

少し待つとDLが終わります。このキャプチャは何処かに行きました(´・ω・`)

さて、あとはコンテナを起動すればいいんだけなんですけど、非Linuxの人はポートフォワーディングの設定をしないと画面を開けません。
IP分かる人は直打ちでも行けると指摘がありました (thx @pjxiao)。
ただしIPは固定じゃないのでポートフォワーディングしてローカルから行くほうが多分楽です。

というわけでVirtualBoxの設定を開いて、4440ポートを開けてやります。セキュリティ意識の高い人は終わったら閉じましょう。
私は閉じません。ローカルだし。

ホスト側のポートは多分変えられますが、何のサービスか忘れそうなのでゲストに合わせます。
docker-vbox-port-forwarding-4440

一応、docker-machineを再起動します。もしかしたらなくてもいいかもしれないけどVirtualBox詳しくないのでとりあえずやっときます。
俺は雰囲気でVirtualBoxをやっている。

できたら以下のように起動します。今回はローカルで起動するようにします。

$ docker run -p 4440:4440 -e SERVER_URL=http://localhost:4440 --name rundeck -t jordan/rundeck:latest
=>Initializing rundeck - This may take a few minutes
=>Generating rundeck key
Generating public/private rsa key pair.
Your identification has been saved in /var/lib/rundeck/.ssh/id_rsa.
Your public key has been saved in /var/lib/rundeck/.ssh/id_rsa.pub.
The key fingerprint is:
58:0a:14:a1:4c:24:73:b8:61:a5:c5:8d:39:45:66:5c rundeck@a9cf3fd26321
The key's randomart image is:
+---[RSA 4096]----+
|oo*o@B.E         |
|oBoBoo           |
|.+o o   .        |
|.    . +         |
|      o S        |
|                 |
|                 |
|                 |
|                 |
+-----------------+
=>/etc/rundeck check OK
=>Generating ssl cert
=>Initializing local MySQL...
[ ok ] Starting MySQL database server: mysqld ..
[info] Checking for tables which need an upgrade, are corrupt or were
not closed cleanly..
[ ok ] Stopping MySQL database server: mysqld.

===================================================================
MySQL user 'root' has no password but only allows local connections
MySQL user 'rundeck' password set to sRnUp1hXjG2fR5s
Rundeck project storage type set to file
Rundeck Storage provider set to file
Rundeck public key:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDaFYrirS83F8Dmu0LHUllbyKs5BqQ6dVdHISHoJH+QFnKJp4uSBKGyQI3geBFD32V1zYFZpr1sG7xYXD/xxgH2ZcrR8+eu22QwHrwjsQIs18JFVRQ1N5NuSRX8AGmOMil20/G6tbqMnwlSQjdLG5qt1HKledzl2j7bJqMsjyY/yP5k9TEfm5fARScbuTdhdTXrAhyn9ahoAX0Lm6f2yrSc8fUBJXmdAXl1+Q2WowVJcl9WX+KbdA/UypTvuF9NioKN6MEjQrlxjfzyMa/NW8RluaBVtqD96C0R7AiZLF2X7RKp2w10yWrjRbD8op5KDk4cjqFTMxCMMO4OYt4bPzuvYpwrfezXjfloNI2t1HfVXKTB28hrHUrhyHW4jSuruUh0do+B7KhP7NzzJV5QJIbCCSMDUmAtSaYRO6RHvALx+BvfByVXFjhM0o85t0gSGPPWEPH4gnTp5LfFS993c/qJKXCxk13IvK2QCTl2ZAo2hE3hq2q4C9uPogLaGXKtR0FQ4Mfrqr4gNYUYKGCNBy217US8rs6S4JjICeVxPkDdTgnhj5AzjgEGrPfP1kxoE8VWP2oPZFgcILxE6DV+Jg3DyPKcVFMUQbOuf/f3l8/16eU3oRplR2U16ryJ38QPiBv2/aCcMwe9PKsTkmzhNc+75eBvqv6CMPvjlhe6VGmzBQ== rundeck@a9cf3fd26321
Server URL set to http://localhost:4440
===================================================================
Starting Supervisor.  You can safely CTRL-C and the container will continue to run with or without the -d (daemon) option

ブラウザでhttp://localhost:4440にアクセスしてみましょう。
以下のような感じで開けましたか?
rundeck-top

ここまできたらもう終わりです。
ユーザ名: 「admin」, パスワード: 「admin」でログインしましょう。

あとは
gochisou