LoginSignup
9
13

More than 5 years have passed since last update.

docker exec を ブラウザからアクセスする

Last updated at Posted at 2018-03-06

docker exec のコンソールをブラウザでアクセスして操作したい」とおもっていて、いろいろな既存ツールから想像してやり方は絶対あるだろうとおもっていたが、自分で作るのはだるいし現状スキル範囲外なところもあるので、きっと誰か作ったのがあるだろうとおもって探したらあったので利用してみた。

ただ、2018/3/6 時点で最新版は若干仕様が異なっていたのでメモを残すことにした。

README を見ながらやったけど、うまくいかんかったので。

環境

DigitalOcean の最弱 Droplet

Item Version
CentOS 7.4.1
Docker 17.12.1-CE
Go 1.9.4

docker exec web console

ダウンロード&ビルド

# git clone https://github.com/bitbull-team/docker-exec-web-console.git
# cd docker-exec-web-console
# docker build -t web-console .

起動

先になんでもいいのでコンテナあげておく

# docker run -id --name test ubuntu:latest bash

このContainer ID or Container Name を後で使う

web-console のコンテナを起動

# docker run \
    --name docker-exec-web-console \
    -p 9999:8888 \
    -e "CONTEXT_PATH=/webconsole" \
    -v /var/run/docker.sock:/var/run/docker.sock \
    web-console

ブラウザからコンソールアクセス-1

http://<server address>:9999/webconsole」にアクセスする。すると下記のようなポップアップがでる。

キャプチャ.PNG

Container ID or Container Name を入れると、そのコンテナへコンソールアクセスできる。

キャプチャ.PNG

ブラウザからコンソールアクセス-2

直接ブラウザのアドレスバーに下記のように入れると、即そのコンテナのコンソールにアクセスできる。

http://<server address>:9999/webconsole/?cid=<container id OR container name>&cmd=bash

おわりに

これを使って自分が作ったコンテナを使ったハンズオンサービスの仕組みをアップデートすることにする。
これまでは無理やりsshdを開けて別のツールを使ってブラウザアクセスを可能にしていた。sshdを使ってというのがダサいので今回のやつがやっぱりスマート。

たぶん、socat ってのをうまく使ってるのがイケてるのだとおもう。

9
13
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
9
13