0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

自分向けに作ったDockerの忘備録をここに公開する

Posted at

構成

Dockerを構成するのは、次の2つです。
Docker Engine ・・・コンテナ仮想化技術であり、アプリケーションの構築からコンテナ化に至るワークフローを連結する
Docker Hub ・・・ アプリケーション群を共有・管理するSaaSサービス

Docker Engine

わからん

Docker Compose

Compose とは、複数のコンテナを使う Docker アプリケーションを、定義・実行するツールです。Compose はアプリケーションのサービスの設定に、Compose ファイルを使います。そして、コマンドを1つ実行するだけで、設定した全てのサービスを作成・起動します。

Docker Hub

Docker Hub はクラウド上のレジストリ・サービスであり、アプリケーションやサービス・コンテナの構築と配信を行います。コンテナ化されたイメージを見つけたり、配布したり、変更の管理、ユーザやチームのコラボレーション、開発パイプラインを通したワークフローの自動化といった集約されたリソースを提供します

Docker Machine

Docker Machine は仮想マシン上に Docker Engine をインストールするツールであり、 docker-machine コマンドを使ってホストを管理します。Mac や Windows 上では、Docker Machine を使うのが Docker を実行する唯一の方法です。

Docker Toolbox

Windows と Mac の両方で利用可能な Docker Toolbox は、Docker クライアント、Machine、Compose、Kitematic をインストールします

Docker Registry(Docker Distribution に統合予定)

レジストリ(Registry)とは、ステートレス(処理状態を把握しない)であり、サーバ・サイドのアプリケーションを大きくスケールさせるため、Docker イメージを保管・提供をします

Docker Swarm

Docker Swarm は Docker に対応するネイティブなクラスタリング用ツールです。Docker Swarm は標準 Docker API で操作できます。そのため、Docker ホスト群を集め、1つの仮想 Docker ホストとして扱えます。既に Docker デーモンと通信可能なツールであれば、Swarm を使うだけで、意識せずに複数のホストにスケール可能になります

◎ Docker のコマンド集 ◎

docker images

ローカル環境に保存されているDockerイメージの一覧を取得する

docker pull ( : <タグ>)

DockerイメージをDocker Hubからダウンロードだけする。

docker rmi

Dockerイメージをローカル環境から削除する

docker ps

実行中のDockerコンテナのみを表示する。-a オプションで停止中のコンテナも表示する。

docker create

Dockerコンテナを作成する(起動はしない)

docker run

Dockerコンテナを作成して起動する。はじめはローカル環境のイメージを探し、無ければDocker Hubに探しに行く。
有名なオプション

  • -d // バックグラウンドで起動
  • --name <名前> // コンテナを識別するための名前を設定する
  • -p <ホスト側ポート>:<コンテナ側ポート> // ポートフォワーディングの設定
  • -it // コンテナ内でインタラクティブなbashシェルを作成する

docker start

作成されたDockerコンテナを起動する

docker stop

起動中のDockerコンテナを停止する

docker rm

Dockerコンテナを削除する

docker exec <コマンド>

Dockerコンテナ内でコマンドを実行する
応用編?
docker exec -it bash // Dockerコンテナ内に新しいbashセッションを作成する

docker build (-t <イメージ名>(:<タグ名>))

dockerfileの情報からDockerイメージの作成をする

docker-compose up

docker-compose.yml が置かれているディレクトリで実行する。Dockerコンテナを作成、起動

docker-compose ps

docker-compose によるDockerコンテナの起動状況を確認する?

docker inspect

コンテナ・イメージ・タスクの低レベルのイメージを表示

◎ Dockerfile とは ◎

通常

  1. 何らかのDockerイメージからコンテナを作成
  2. コンテナ内でソフトをインストール&環境変数の設定 etc…
    トラブル
    2の作業をどうやって引継ぐ?どうやって他の開発環境でも同様のものを作り上げる?
    アイデア
    2の一連の作業をDockerfileという形でコード化してしまおう!

◎ Docker Compose とは ◎

通常

  1. 1つのサービスにつき、複数のDockerイメージから複数のDockerコンテナを作成
  2. コンテナ内でポートフォワーディング&ネットワークの設定 etc…

トラブル
2の作業をどうやって引継ぐ?どうやって他の開発環境でも同様のものを作り上げる?

アイデア
2の一連の作業を docker-compose.yml という形でコード化してしまおう!

参考文献

Docker公式リファレンス
さくらのナレッジ Docker入門

おわりに

この記事は1年前に自分向けに書いたDockerの忘備録をqiitaに移植したものです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?