ITエンジニア日記 ~NO SKILL, NO LIFE~

学んだ技術や、気になることをアウトプットしていきます。プログラミング, インフラ, etc...

Docker 【概要】

今回はDockerの概要的なところをまとめます。

[目次]

1. Dockerとは

Dockerは、コンテナ型の仮想環境を使用して様々な環境でアプリケーション実行環境を構築/運用するためのオープンソースのプラットフォーム。

コンテナを使用しているため、高速に起動し、動作も軽量。

2. Dockerの特徴

  • 本番環境にリスクの少ないデプロイが可能になる
  • 構築済みのコンテナイメージを使用できる
  • インフラのコード化が可能

2-1. 本番環境にリスクの少ないデプロイが可能になる

 Dockerを使って、開発したアプリケーションの実行に必要なもの(ミドルウェアやライブラリなど)がすべて含まれたDockerイメージというものを作成する。このイメージはコンテナのひな型になるもので、このイメージをもとにコンテナを稼働させる。

f:id:masakiXX0:20191023221849j:plain

 DokcerイメージはDockerがインストールされた環境であれば基本的にどこでも動作するので、「テスト環境では動いたけど、本番環境で動かない!」というリスクを減らすことができる。

2-2. 構築済みのコンテナイメージを使用できる

 DockerHubというDocker公式のリポジトリサービスから、構築済みのDockerイメージが取得できる。そのため、1からイメージを作成する手間がかからない。

また、自分が作成したDockerイメージをDockerHubへアップロードして、他の人に配布することも可能。

2-3 インフラのコード化が可能

 Dockerfileと呼ばれる設定ファイルに、Docker上で動作させるコンテナの構成情報を記述できる。Dockerfileに記述された構成情報をもとにDockerイメージを作成することができる。

3.まとめ

Dockerの概要的なことについてまとめました。

参考

WINGSプロジェクト阿佐志保 「プログラマのためのDocker教科書 第2版」 株式会社翔泳社