🐳

【WSL】Azure Cloud Shell コンテナを動かし、docker コマンドを使えるようにする

2023/11/24に公開

はじめに

今回は、
チュートリアルをやりたかっただけなのに、Portal から Azure Cloud Shell を実行してたら、途中でdockerコマンドが出てきてピンチ!ローカルでやるしかないらしい。
でもローカルでやり始めたらdocker内からdockerコマンド使えないじゃん再度ピンチ!DooDってやり方があるらしいからやってみよう!
という話です。
正確には docker と打つとコマンドの詳細は出てきます。が、buildはできません。なので使えるようにします。

環境

WSL2
Ubuntu 22.04

Azure Cloud Shell イメージの pull

まあまあ大きいので時間かかります。

$ docker pull mcr.microsoft.com/azure-cloudshell:latest

基本的な使い方

bashで使いたい場合は、以下のように /bin/bash で実行します。

$ docker run -it mcr.microsoft.com/azure-cloudshell /bin/bash

Azure Cloud Shell 内で docker コマンドを使う場合の使い方

/var/run/docker.sock をマウントさせて、ホストOS(この場合はUbuntu)が使用しているdockerデーモンと共有する、というやり方らしいです。
以下のコマンドでできますた。

$ docker run -it -v /var/run/docker.sock:/var/run/docker.sock mcr.microsoft.com/azure-cloudshell /bin/bash

DooD とは

詳しい内容はこちらの記事が参考になりました。ふむふむ。

https://blog.nijohando.jp/post/docker-in-docker-docker-outside-of-docker/

おわりに

前書きが一番長いね!
簡単にできるけど、毎回このコマンド叩くのもアレなので、Dockerfileでも用意しましょうかね

参考

https://level69.net/archives/31099
https://kuttsun.blogspot.com/2022/05/docker-docker.html

Discussion