一覧に戻る
Lv.3

Docker

Docker

アプリを基本的にどこでも同じ環境で動かせるようにするコンテナ技術

名前のヒミツ

Docker(ドッカー) 「docker」という単語には、港で荷物を積み下ろしする「港湾労働者(Dockworker)」という意味があるんだ。 船にコンテナを積むように、プログラムをコンテナに積んで運ぶイメージと重なるね。ロゴマークのクジラも、たくさんのコンテナを運んでいるよね。

簡単に説明すると

Dockerっていうのは、アプリを動かすために必要なものを全部ひとまとめにして、Dockerが動く環境なら基本的にどこでも同じように動かせるようにする仕組みのこと。 普通はパソコンが変わると設定が必要で面倒なんだけど、Dockerを使えば「コンテナ」という箱ごと移動させるだけで、すぐにアプリが動くようになるんだよ。 「自分のパソコンでは動いたのに」というトラブルを防げる便利な道具だね。

くわしく見てみよう!

Dockerとは、アプリケーションを開発・移動・実行するためのプラットフォームのことだよ。
「コンテナ」と呼ばれる仮想的な箱の中に、アプリ本体とそれを動かすための設定やライブラリを全部詰め込んでしまう技術なんだ。
そうすることで、開発者のパソコンでも、本番用のサーバーでも、基本的に同じ環境を再現できるのが最大の特徴だね。

これまでの「仮想マシン」という技術は、コンピューターの中にもう一つ別のコンピューターを丸ごと作るようなもので、動作が重くなりがちだったんだ。
でもDockerは、OSの機能をうまく共有して動くから、とても軽くて起動も速いのがメリットだよ。
必要なリソースも少なくて済むから、1台のサーバーでたくさんのアプリを効率よく同時に動かすこともできるね。

開発現場では「自分のパソコンでは動いたのに、サーバーに持っていったら動かない」という環境の違いによるトラブルがよくあるんだ。
でもDockerを使えば環境ごと持ち運べるから、そんな悩みもなくなるんだよ。
「Dockerfile」という設計図から「イメージ」を作って、そこから「コンテナ」を起動するという流れで使うんだ。
チーム全員が同じ開発環境を一瞬で作れるから、現代の開発現場では必須のツールになっているね。