Centos7 docker備忘録
設定
docker に必要なパッケージをインストール
yum install yum-utils device-mapper-persistent-data lvm2
docker repoの設定
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
dockerのインストール
yum install docker-ce
サービスを有効化
systemctl start docker
自動起動を設定
systemctl enable docker
サービスの一覧を確認
systemctl list-units --type=service
dockerをプロキシ配下で使用する時
docker.serviceをコピー
cp /usr/lib/systemd/system/docker.service /etc/systemd/system/
コピーしたdocker.serviceのExecStartコマンドの直前にProxyの設定を追加
Environment="HTTP_PROXY=http://user:pwd@proxy.example.com:8080"
設定を再読込 & Docker再起動
systemctl daemon-reload
systemctl restart docker
docker image の取得
docker pull centos:latest
docker run
コンテナに名前を付ける
docker run –name
コンテナのディレクトリとホストのディレクトリにリンクを貼る
docker run -v ホストのディレクトリ:コンテナのディレクトリ
インタラクティブなシェルに入る
docker run -it
バックグラウンドで実行する
docker run -d
ポートフォワードをする(ローカルポート:リモートポート)
docker run -p 10022:22
docker内でsystemdを操作する場合
docker run –privileged -d –name centos7 -p 10022:22 centos /sbin/init
docker exec -it centos7 /bin/bash
docker exec
デタッチ中のコンテナにオプションを付加してアタッチが可能。exitしてもコンテナは削除されない
docker exec -it centos7 /bin/bash
docker stop
稼働中のコンテナを停止する
docker stop コンテナID
docker rm
停止中のコンテナを削除する
docker rm コンテナID
docker inspect
コンテナの詳細情報を全て表示する
docker inspect コンテナID
docker network
ネットワークの一覧を表示させる
docker network ls
デフォルトのネットワークの詳細を表示させる
docker network inspect bridge
docker diff
コンテナを起動した後の変更点を表示する。「A」追加、「C」変更、「D」削除
docker diff コンテナID
docker commit
起動しているコンテナをイメージ化する(コンテナIDは通常、docker hubのアカウント/アプリ名)
docker commit コンテナID イメージ名:タグ
docker port
ホストに紐づけられているポートを確認する
docker port コンテナID [ポート番号]