初めまして。
駆け出しエンジニアのtamura1225です。
7月からエンジニアとして働き始めて、もうすぐ2ヶ月が経とうとしています。
仕事では常に新しいことを身に付けていかなければいけないので大変ですが、その分楽しくもあり、日々成長を感じる毎日です。
今回は仕事をしていく中で勉強したことを、きちんと自分で理解できているか確認するため、また他の駆け出しエンジニアの方でよく分からないなと思っている人に向けて(そこまでの内容を書けるかは分かりませんが)記事を書いていこうと思っています。
もし間違ったことを書いているようでしたらご指摘いただけると勉強になります。
初回である今回はDockerについてまとめていこうと思います。
Dockerとは
Dockerとは何なのでしょうか。
僕みたいに情報学を学んだわけでもなく、エンジニアも未経験という方はDockerという言葉すら聞いたことないかもしれません。
僕は仕事して初めて知りました。
とりあえずwikiからコピペしてみます。
Docker(ドッカー)は、コンテナ仮想化を用いてアプリケーションを開発・配置・実行するためのオープンプラットフォームである。
Docker - Wikipedia
よく分からないので、1つ1つ見ていきましょう。
言葉の確認
- コンテナ仮想化
コンテナ仮想化とはコンピュータの中にコンテナと呼ばれる隔離された環境を作ることです。
このコンテナの中で例えばアプリケーションを開発したりします。
コンテナを使う理由としてはいくつかありますが、そのうちの1つに複数人で開発する場合に同一の環境を構築しやすいというのがあります。
どうでも良いですが、Dockerのアイコンはクジラにコンテナが載ってますね。
- オープンプラットフォーム
プラットフォームとは、具体的な説明は難しいのですが、ハードウェアやソフトウェアの基礎的な部分となるものです。
ここでは、アプリケーションを開発・配置・実行するための土台のようなイメージだと思います。
また、ここでいうオープンとはオープンソースのことだと思われます。
つまり、少しくどく言うとDockerとは
「コンピュータの中にコンテナと呼ばれる隔離された環境を作り、アプリケーションの開発・配置・実行を行う土台となるもの。」
となります。
(これはただの感想ですが、何かを説明しようとすると、それを指し示す良い表現が見つからない事があります。これは、もちろん個人の知識不足というのもありますが、共同意識による定義のない言葉であるからというのもあり、後者に関しては使っていくうちにイメージを理解していくしかないのかなと思っています。)
何となく理解はできた気がしますが、言葉だけみても何のことかさっぱりだと思うので、次回はDockerを実際に使ってみようと思います。
参考文献・サイト
Docker
Docker - Wikipedia
コンテナ型仮想化 - IT用語辞典 e-Words
プラットフォーム - クラウド・データセンター用語集/IDCフロンティア