Dockerの基本操作(備忘録)

Dockerについて

Dockerは、1コンテナにつき1つのアプリ(実行環境)
Docker Image(ドッカーイメージ)はRegistry(レジストリー)に保存する
保存するレジストリはDockerHUB、もしくはAWSのAmazon Elastic Container Registry (ECR)に保存して管理する
docker Pull
//イメージをレジストリからダウンロード

docker Push
//レジストリに修正したファイルをアップロード

docker Run
//デーモンがレジストリからイメージをダウンロードしてコンテナを作成する

Dockerの基本操作

#DockerHubのアカウント作成
作成したいイメージを探してdocker pullで使用する
もしくはイメージに手を加えて利用することもできる

#Dockerのコマンド
docker run centos
// centos という名前のイメージを起動 実行中のdocker(コンテナ)の一覧が表示
docker ps
// 終了したコンテナも含めて一覧表示
docker ps -a
// コンテナを起動しつつ操作可能にする(環境にログインしたような状態になる)
docker run -it centos
// imageの一覧を表示
docker images
// 自作(編集)したイメージを保存する場合
docker commit  
// 起動中のコンテナを exit で終了して docker ps -a で  CONTAINER IDを確認
docker commit {{CONTAINER ID}}   {REPOSITRY名}   
例:docker commit c7827f28ee8d mycentos_with_httpd

#Dockerfileの作成
DockerHubに作成したいイメージがなければ自分で作成することができる
Dockerfileは自前で任意の場所に作成する

DockerComposeのインストール

Docker for Macをインストール済みであれば既にインストールされている
※後にVagrant内、AWS にインストールする方法を記載する(linuxの場合は別途必要になる)
複数のコンテナを組み合わせて1つのアプリケーションとして構成を定義するファイル
#docker-compose.ymlの作成
PHPとMySQLのコンテナを組み合わせた例:

#DockerComposeの説明
docker-compose.yml がある階層まで移動してコマンドを実行する

起動・停止・再起動のコマンド

起動中のコンテナに入りたい時

補足

2020年7月頃にAmazon ECSに簡単にデプロイできるコマンドができたらしい
別の記事にて使い方Docker + Amazon ECSのデプロイ方法について紹介する予定です