Linux学習のために、VirtualBoxのような仮想マシンではなく、Dockerのコンテナで仮想環境を作ってみます。これからLinuxの勉強をする方は、Dockerについての知識も必須だと思うので、参考にしてみてください。なお、Dockerデスクトップがインストールされている前提ですので、まだの方はそちらを済ませておいてください。
ターミナルを起動し、以下のコマンドを実行していきます。(私のPCはMacなのでターミナルを使っていますが、Windowsの方はコマンドプロンプトですね。)
イメージを取得する
まずはCentOSのイメージをダウンロードします。
$ docker image pull centos:centos7
[:タグ名]
に:centos7
とバージョンを指定していますが、指定しなくても構いません。指定しなかった場合はlatest
として最新版がダウンロードされます。
image
を省略し、docker pull
でも動作します。Dockerのバージョンアップに伴って、コマンド体系が再編成され、”上位コマンド+副コマンド”という形式になりましたが、現時点では旧コマンドでも動作するので、どちらを使っても違いはありません。
コンテナを起動する
イメージからコンテナを起動します。
$ docker run -it -d --name centos centos:centos7
コマンド・オプションについて
- docker run: Dockerコンテナを実行するためのコマンド。
- -it: 2つのオプション -i(対話モード) と -t(TTY、疑似端末を提供) の組み合わせ。
- -d: バックグラウンドモードでコンテナを実行。
- --name centos: コンテナに centos と名前をつける。
bashを起動し、シェルに入る
コンテナが立ち上がったら、シェルを起動して中に入ります。
$ docker exec -it centos /bin/bash # 以降、bashコマンドを実行できる [root@97ba138aa450 /]#
コマンド・オプションについて
- docker exec: Dockerコンテナ内でコマンドを実行するためのコマンド。
- -it: 先ほどと同様。
- centos: コンテナの名前またはID。
- /bin/bash: 実行したいコマンド。この場合、Bashシェルを起動。
適当なコマンドを試してみる
コンテナ上のシェルの中に入ったら、操作に慣れるために、適当なコマンドを入力してみます。
# CentOSのバージョンを確認 [root@97ba138aa450 /]# cat /etc/redhat-release # カレントディレクトリのファイルとディレクトリを表示 [root@97ba138aa450 /]# ls # ルートディレクトリがあるはずなので、移動 [root@97ba138aa450 /]# cd root # カレントディレクトリを確認 [root@97ba138aa450 /]# pwd
ひとまずは、コマンドの意味がわからなくても、エラー以外の何かが表示されればOKです。意味や使い方、できることなどは徐々に学んでいきましょう。
シェルから出て、コンテナを停止する
最後にコンテナを停止させるコマンドです。Dockerデスクトップで停止ボタンをクリックしてもOKです。
[root@97ba138aa450 /]# exit $ docker stop centos
おわりに
Dockerを利用することで、非常に簡単にLinux環境を構築することができました。
次の記事ではEmacsのインストールと基本的なファイル操作について解説します。