無気力生活 (ノ ´ω`)ノ ~゜

脱力系エンジニア。てきとーに生きてます。

おとなしくDocker for Windowsを使うことがなによりの策だと感じる

以前こんなことをネタにしたりしました。

gdgd-shinoyu.hatenablog.com

普段使っているMacbookAirがさすがにパワー不足になり、普段ゲームするくらいしか使っていないWindowsPCの出番が増えてきました。

あれからWindowsで快適なshellとdocker環境を求めて、ああだこうだとWSLでdocker-compose使うことを試したり、Vagrantあたりで共有フォルダ生やして試してみたりといろいろやってましたが、単純にdocker-composeでコンテナ生やすだけならdocker for Windows使えばいいですね(´・ω・`)

普段はWSL上で編集して、PowershellはDocker操作用に使う。これだ。 ちなみに、WSL上でもdocker.exeとすればWindows側のdockerが叩けます。

# docker.exe ps                                                                                                                                                     [master]
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
a3309a6e1dcd        mariadb:10.0.35     "docker-entrypoint.s…"   10 minutes ago      Up 9 minutes        3306/tcp, 0.0.0.0:3306->30001/tcp   etl_db_1
8bf9d9e04ac1        etl_digdag          "bash -c 'java -jar …   10 minutes ago      Up 9 minutes        0.0.0.0:65432->30002/tcp            etl_digdag_1

こんな感じ。

ただ、この状態でbash立ち上げようとすると

docker-compose.exe exec digdag bash
the input device is not a TTY.  If you are using mintty, try prefixing the command with 'winpty'

と怒られる(´・ω・`)まあwinptyが入っている環境なら動くらしいんですが。 おとなしくPowerShell

PS etl> docker-compose.exe exec digdag bash
digdag@8bf9d9e04ac1:~$

とやればすべて解決するわけで。 もうこれでいいな(´・ω・`)