【初めてのdocker講座全6回】初心者講座第1回、DOCKERとは?
DOCKERとは?
初心者エンジニアの方や、フロントエンドの方はあまり馴染みがないかもしれません。
でも、職場で
「DOCKER渡すからローカル環境それ使ってね」
取引先からも
「DOCKERでテスト環境作れます?」
のような、
DOCKERってなに?
と思った方が、このページを訪れてくださっていると思います。
かく言う私も1年前まではdockerって何?
でした。
ただ、新しいプロジェクト入ったら
「ローカル環境はdockerで渡しますんで^^」
と言われ
「はい、ありがとうございます^^」
と言ってから焦って調べました。
調べてみて思ったのが
意外とネットにdockerの情報が少ない。。
という事でした。
特に初心者向けの情報少ない!!
そう思ったので、簡単ですが初心者向けで6回で説明させて頂ければと思いました!!
DOCKERとは何?
dockerを専門用語を使わず一言で言うならば
「一瞬で作れる便利サーバー」
とでも言いましょうか。
dockerが生まれるまでは、どのプロジェクトにも同じ悩みがありました
それは、テスト環境の構築です。
プロジェクトに参加しているエンジニアは、それぞれ違う環境で作業しています。
windowsパソコンで作業している人
mac使い
linuxで作業している人も!
それぞれ環境が違うので、まったく同じテスト環境を作成するのは難しい課題でした。
それでみんなが使っていたのが
・virtualbox
・VMware
・XAMPP
等の仮想サーバをそれぞれの環境にインストールして、なんとか本番と同じ環境を構築していました。
でもこれはこれで大変。
専門知識がいるし、微妙に違うバージョンを入れてしまって、いざ本番に入れたらエラーが。。
みたいな事がよくありました。
そこで生まれたのがdockerです。
dockerを使えば、windowsだろうとmacだろうとlinuxユーザだろうと
まったく同じ環境で作業出来るのです!!
まったく同じバージョンのサーバーで
phpやDBのバージョンも全て同じ環境を簡単に構築できるようになります。
dockerがあればもうテスト環境で困る事はありません。
コンテナとは?
dockerを勉強するにあたり、かならずぶつかるのがコンテナです。
コンテナ?
コンテナっていうと、あの船に乗っけて海外とかに荷物を送る。。?

このイメージですよね。
そうです。
dockerのアイコンはこれ

はい、鯨の上にコンテナが乗っていますね。
dockerは、コンテナにそれぞれのプログラムを載せて動かす仮想サーバー
とでもいいましょうか。
みんなに、このコンテナの乗ったdockerイメージを渡して
もらった人はそれを実行して仮想サーバーを構築できる
もう鯨に乗ったコンテナをそのままもらえるので、あとは命令一つで全員が同じ環境を使えるのです。
dockerがここまで広まったのはこの手軽さです。
サーバーに詳しくなくても、簡単にテスト環境が構築できるのです。
例えば、wordpressのテスト環境を構築しようとします。
その時DOCKERでは↓のようなイメージです。

鯨がphpとmysqlとwordpressのコンテナを積んでいます。
この鯨(docker)をそのまま皆に配布して、まったく同じ環境で作業が出来るのです。
コンテナというのは、このように絵にすると理解しやすく
phpやmysqlやlinux等のプログラムやライブラリをそのまま、コンテナとして保管出来るのです。
-0 Comment-