Windows Terminal がやってきたので、なるべく作業環境は Windows Terminal に寄せたいわけです。ということで手始めに Docker のビルド環境はこちらに移動することにしました。デーモンは Windows 側にいます。
事前準備
- Docker for Windows をインストールする。
- Windows Subsystem for Linux (WSL)- Ubuntu をインストールする。 ( Windows 10 May 2019 Update 以降がよい )
- Windows の設定で Hyper-V を有効にする。
Docker のインストール
$ sudo apt update
$ sudo apt install docker.io
ホスト側のDocker for Windows でローカルホストからの平文接続を許可する
Docker for Windows へはドメインソケット経由ではつながらないので、TCP経由でつなぎます。デフォルトではTLSが必須なのですがローカルホストの場合には平文で接続を許可するオプションがあるので、そうしてしまいましょう。
DOCKER_HOST 環境変数を設定する
WSL側では環境変数で接続先を指定しておきます。
$ export DOCKER_HOST="tcp://0.0.0.0:2375"
Docker コンテナをビルドする
適当なディレクトリに Dockerfile とスクリプトを置く
awesome.sh
#/bin/sh
echo "hello!!!"
FROM debian
COPY awesome.sh /
RUN chmod +x /awesome.sh
CMD /awesome.sh
上記で作成した適当なディレクトリで docker build する。
$ docker build . -t sample1
動作確認する
$ docker run sample1
hello!!!
まとめ
平和に動作します。特別なことはありません。