Dockerを最近触り始めました。
WindowsPCのVirtualBox上で起動しているCentOS7を使ってDockerの基本操作を使いながら覚えていきます。
環境
Windows7のPC
VirtualBox
CentOS7 (VirutalBox上で起動) IP:192.168.56.101
Docker 1.13.1
CentOS6 (VirutalBoxのCentOS7のDocker上で起動)
※ 前提としてVirtualBox上にCentOS7のインストールまで済んでいるものとします。
Dockerのインストール
CentOS7にログインして、dockerをyumでインストールします。
$ sudo yum install docker
リポジトリの検索
docker searchでDocker Hubにあるリポジトリを検索することができます。
$ sudo docker search centos
イメージのダウンロード
docker pullで<リポジトリ名>:<タグ名>を入力してDockerイメージをダウンロードします。今回はCentOS6をダウンロードします。
$ sudo docker pull centos:6
タグ名はDocker Hubのサイトで確認できます(centosタグ一覧)。タグ名を指定しなければ最新のlatestがダウンロードされます。
コンテナの起動
コンテナを起動します。WindowsPCからアクセスするために-pオプションでポートフォワーディングを設定します。
$ sudo docker run -it -p 8080:80 --name webserver centos:6 /bin/bash
起動したコンテナにApacheをインストール
docker runコマンドを実行したあと起動したコンテナに自動でログインされるので、Apacheをインストールします。
# yum install httpd
# service start httpd
# vi /var/www/html/index.html
Hello!
を入力して保存。
Ctrl + PQ (Pを押して次にQを押す)でコンテナからログアウトできます。
コンテナはそのまま起動したままになります。
exitで抜けるとコンテナが停止するのでご注意ください。
コンテナのWebサーバーにアクセス
WindowsPCのブラウザを立ち上げてアクセスします。「Hello!」が表示されればOKです。
http://192.168.56.101:8080
基本コマンド
psコマンドで起動中のコンテナを表示します。コンテナIDが表示されます。-a オプションをつけると停止中のコンテナも表示されます。
$ sudo docker ps
$ sudo docker ps -a
起動中のコンテナを停止します。
$ sudo docker stop <コンテナ名またはコンテナID>
停止中のコンテナを起動します。
$ sudo docker start <コンテナ名またはコンテナID>
コンテナにログインします。
$ sudo docker attach <コンテナ名またはコンテナID>
コンテナを削除します。
$ sudo docker rm <コンテナ名またはコンテナID>
ダウンロードしたイメージを表示します。
$ sudo docker images
以上で終わります。