dockerメモ

dockerで自分が良く使うコマンドをメモ代わりに残しておきます

インストール

yum install docker

イメージ系

#ダウンロード
docker pull centos/systemd

#イメージ表示
docker images

#イメージ削除
docker rmi イメージID(コンテナを削除しないと消えない)

#イメージ作成
#ocker commit コンテナID リポジトリ名:タグ
docker commit e6eb08341e90 python:centos7(コンテナID e6eb08341e90 をPythonリポじり名でcentos7というタグを付けて保存という意味)

コンテナ作成&起動

#80番と443番ポートを転送
docker run --name httpd(コンテナ名) -p 80:80 -p 443:443 -dt centos/systemd  /sbin/init

コンテナ系

#起動中コンテナを表示
docker ps 

#停止中のコンテナも表示
docker ps -a

#コンテナ停止
docker stop コンテナID(コンテナIDはdocker psででる一番左の値)

#コンテナ起動
docker sart コンテナID(コンテナIDはdocker psででる一番左の値)

#コンテナログアウト後に再ログイン
docker exec -it コンテナID /bin/bash

#停止中のコンテナ全て削除
docker rm $(docker ps -aq)

移行系

#dockerイメージを保存(イメージ作成はイメージ系を見て)
#保存形式は「tar」「tar.gz」「zip」の3種類ある
docker save imageid リポジトリ名:タグ > ファイル名.tar.zip

#dockerイメージを展開
docker load  < ファイル名.tar.gz #同一階層
docker load  < /root/ファイル名.tar.gz #フルパス

docker run --name httpd(コンテナ名) -p 80:80 -p 443:443 -dt IMAGE ID  /sbin/init

イメージ展開後は、docker runコマンドで起動すればOK

docker hub

#ログイン
docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: アカウント名
Password: パスワード
Login Succeeded

#dockerイメージにタグを付ける
#docker tag イメージID ユーザー名b/リポジトリ名:latest(タグ)
docker tag d1980a0adff8 sitelab/python:latest

#dockerイメージにタグを複数付ける
#複数付ける場合は繰り返しとなります
docker tag d1980a0adff8 sitelab/python:latest
docker tag d1980a0adff8 sitelab/python:python

#dockerにプッシュする
docker push sitelab/python:latest

#dockerにプッシュする(タグが複数)
docker push sitelab/python:latest
docker push sitelab/python:python