Dockerのイメージ・コンテナが全部消えた【ミス, 覚え書き】
目次
- Dockerのイメージ全部消えた
- Windows版のDocker
- そもそもなぜWindows版のDockerを入れようとしたのか?
- 被害
- それよりもやばかったヒューマンエラー
- Windows版のDockerの調子
- おわりに
Dockerのイメージ全部消えた
筆者はWindowsマシンを使っているのですが、そのマシンにWindows版のDockerをインストールしました。
するとWSL2で使っていたDockerの持っているイメージがぜんぶ消えて、Windows版の方と同期するようになりました。
まさかWindows版のDockerのインストールでWSL2のDockerに影響が出るとは思わず、かなり仰天しました。
ひえーって感じです。
Windows版のDocker
Windows版のDockerは
↑からインストーラーをダウンロードできます。
これをダウンロードしてインストーラーを起動したところ、特に確認画面を確認した覚えもなくインストールが進み、結果的にWSL2のDockerのイメージがぜんぶ消えてしまいました。
うっすらと確認画面に「WSL2」の文字があったような気がするんですが、おそらく読み飛ばしてしまったんだと思います。
そもそもなぜWindows版のDockerを入れようとしたのか?
筆者はWSL2を使っていて、Dockerもインストール済みでした。
そのためDockerは普段から使っていたのですが、今回は何を思ったかWindows版のDockerをインストールしてみようということに。
WSL2版のDockerは、アドレスなどがWSL2の環境のものなので、ホストのWindows側であれやこれやしようとすると、一工夫二工夫必要だったのです。
そのため、それらが煩わしいし、Windowsに直接Docker入れちゃえばそんなことしなくてもいいかなーっと安易に考えていました。
特に深く考えもせず、もちろんWSL2のDockerに影響が出るなんてことはみじんも思わずインストールをクリック連打したわけです。
その時の私の様子はおもちゃで遊ぶ子供のようでした。
被害
被害と言うかまぁ自分の確認ミスなんですけどね。
今回の被害は開発環境で開発していたサービスの3イメージで、ちょこちょこ使っていたものでした。
それからコンテナも全部飛びました。コンテナが残っていればイメージに復元できたかもしれません。
幸い、それらの開発環境には大事なデータなどは保存しておらず、消えてしまっても何も問題のないデータでした。
しかし、環境を再構築する必要が出て時間的なコストが出てしまいました。まぁこれは仕方ないんですが。
1日1サービス復旧すると考えると3日のロスです。もっとサービスが多かったらひどかったかもしれません。
それよりもやばかったヒューマンエラー
その開発環境をWSL2で再構築していたのですが、その過程でありえないミスをしてしまいそうになりました。
具体的にはmedia
というディレクトリを削除しようとしたのですが、これを間違えて
rm -rf /media
と打ち込んでしまいroot
以下の/media
がお亡くなりになる事態がありました。
幸い/media
には大事なメディアはマウントされておらず、事なきを得ましたが、これがもし/mnt
だったらと思うと血の気が引きます。
(^ _ ^) | この打ち間違いが一番やばかったよね |
(・ v ・) | ガクブル |
(ー o ー) | ま、あるあるなミスだね |
Windows版のDockerの調子
Windows版のDockerはコマンドプロンプトからもWSL2からも使えるし非常に快適です。
最初からこっちを入れておけば良かったな―と思いました。
コマンドプロンプトからコンテナを走らせれば、アドレスもそのままWindowsのものを使えますし、非常にグッド、手間が減ります。
おわりに
WSL2でDockerを使っている方、Windows版のDockerをインストールする場合は気をつけてください。
私みたいに開発環境がすべて吹っ飛ぶかもしれません。
今回は時間的なロスだけで済みましたが、本番環境だったらと思うと寝るに寝れませんね。
(^ _ ^) | 本番環境だったら成仏しなければいけなかった |
(・ v ・) | インストールを軽く見た罪 |