docker swarmで実行してるサービスに接続できない


Docker公式のチュートリアルGet Started:part4でちょい詰まったのでメモ。

環境

Lubuntu 18.04
Docker version 18.09.0
docker-machine version 0.16.0

問題

手順通りdocker-machineで複数のVMを生成後、サービスをデプロイした。
各コンテナ、サービスを見る限り動作しているようなのだが、ブラウザなど外部からの接続ができない。curlでもConnection refusedしてしまった。
port周りも確認したがどうもわからん。

対処

公式フォーラムでまんまそれっぽいトピックを発見。
ポートフォワードの設定やら弄っているが、結局のところ
boot2docker.isoのバージョンを下げるといけるみたい。

お手本のVMは一旦おさらばする。

docker-machine rm $(docker-machine ls -q) # Delete all VMs and their disk images

直近一つ前のisoを指定して、VMを作成し直しです。

docker-machine create --driver virtualbox --virtualbox-boot2docker-url "https://github.com/boot2docker/boot2docker/releases/download/v18.06.1-ce/boot2docker.iso" myvm1
docker-machine create --driver virtualbox --virtualbox-boot2docker-url "https://github.com/boot2docker/boot2docker/releases/download/v18.06.1-ce/boot2docker.iso" myvm2

トピックでは~/.docker/machine/cache/へ格納してるみたいですが、めんどいので直で落としてきました。このVMではすんなりうまくいった。
docker engine 18.09.0になってから不具合が出始めたのかな
すぐに修正される気もします。


感想

チュートリアルから詰まるんきつい。
なんか思いたってqiita初投稿してもた。markdownの練習になったよ。