ことの顛末
授業でCentOSStreamの環境構築をVMWareでやれと言われたけれどVMWare入れるの面倒+せっかくDockerあるので使ってみたい
(ちなみにLinuxのシェルが動かせればいいという話なのでこういったことをしています 無理にWindowsでしか動かないアプリとかをいきって「拙者はArchですぞ!!wwwブフォwww」とかは違うのできちんと教科担任に確認を取りましょう)
環境構築のための環境構築
記事の環境
- Windows 10
- Docker 20.10.17
おとなしく公式のドキュメントを読みながら進めましょう
おそらく詰まるのはWSLの有効化だのなんだのだと思いますが調べればいけるので頑張ってください
docker version
で正常にバージョン情報やらが表示されればOKです
CentOSStreamの環境構築
イメージを引っ張ってくる
授業での指定がCentOSのStream9だそうなのでそれに合わせてイメージを引っ張ってきます
docker pull quay.io/centos/centos:stream9
イメージが正常にひっぱれたかの確認
docker image ls
# こんなのが帰ってくればいい
# quay.io/centos/centos stream9 047d6e0a5993 2 weeks ago 155MB
コンテナを走らせる
持ってきたイメージはあくまで電源は入っていないハードのようなものなので、電源を入れましょう
C:\Users\hoge>docker run -it --name centos quay.io/centos/centos:stream9
[root@287219043f92 /]# uname -a
Linux 287219043f92 5.10.16.3-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
[root@287219043f92 /]# cat /etc/redhat-release
CentOS Stream release 9
[root@287219043f92 /]#
バックグランド実行の場合
C:\Users\hoge>docker run -it -d --name centos quay.io/centos/centos:stream9
C:\Users\raiga>docker exec -it centos /bin/bash
[root@75119db105d2 /]#
-
-i
標準入力を受け付ける -
-t
TTYを仮想コンテナに割り当て -
--name
コンテナに名前を付ける -
-d
バックグラウンド実行 コンテナが走っているかはdocker ps
などで確認できる
補遺
コンテナとホスト間でのファイル共有
docker run -it -d --name centos quay.io/centos/centos:stream9 --mount type=bind,src=/path/to/host_dir,dst=/home/container_dir
コンテナ環境は破棄すると中で作業したファイルは消えてしまうため、ホストのディレクトリをマウントしておきましょう
Desktop でやりましょう
ここまでCLIのやり方をまとめてみましたが、全部DockerDesktopでやったほうがいいです。
特にファイルマウントはRUNを実行する際のOptional Setting
みたいなやつのbind
でディレクトリを指定すれば簡単に文とができます。
Desktop でうまく動かせないな、と感じたらコマンドはたたいてみましょう
修正
CentoOSはCentOS Streamとは違うそうです。エンタープライズ向けと最新版(Nightlyのようなもの)らしいです。