先に安心してほしいこと
Coolifyを使うなら、Dockerのコマンドをすべて覚える必要はありません。この記事では、Dockerが何をしているのかと、画面に用語が出てきたときに困らないための基礎だけを扱います。
Coolifyの説明で「Dockerがよく使われる」って出てきたけど、結局Dockerって何なの?
コードだけじゃなく、環境ごと箱に詰める仕組み。
前の記事で、コードを「レシピ」と例えました。レシピだけを渡されても、キッチンの道具や調味料が違えば、同じ味は再現できません。
Dockerは、コードと、それを動かすために必要なソフトウェア・ライブラリ・実行環境をまとめて、Dockerが使える環境なら同じ形で動かしやすくする仕組みです。まとめられた「箱詰めのひな型」をイメージと呼び、そのイメージから実際に起動して動いているものをコンテナと呼びます。レシピと道具・調味料をセットにして箱詰めしたものが「イメージ」、実際にその箱を開けて厨房で調理している状態が「コンテナ」、というイメージです。
「イメージ」と「コンテナ」、何が違うの?
イメージは、コード・ライブラリ・実行環境をまとめた、いわば「箱詰めされたひな型」。まだ動いていない状態です。コンテナは、そのイメージから実際に起動した、動いているものを指します。「イメージを元に、コンテナを起動する」という言い方をします。
- コード+ライブラリ+実行環境を用意する
- 箱詰めしてDockerイメージを作る
- 起動してDockerコンテナにする
もう少し正確に
コンテナは、仮想マシン(VM)とは仕組みが異なります。VMはOSごと丸ごと再現しますが、コンテナはホストOSのカーネルを共有しながら中身だけを分離するため、より軽量に動きます。
なんでそんな箱が必要なの? 普通にコードだけ置けばいいんじゃ……?
なぜ箱に詰める必要があるのか
開発の世界には、「自分のPCでは動くのに、サーバーに置いたら動かない」という有名な悩みがあります。原因は、PCとサーバーで、プログラミング言語のバージョンや設定が少し違うこと。Dockerは、こうした環境差分を減らすのに役立ちます。
- 環境差分に強くなる。 「バージョンが違って動かない」を減らせる。
- 複数のサービスを、設定が衝突しにくい形で共存させやすい。 それぞれ独立したコンテナに分かれる。
- 同じイメージを、そのまま別のVPSでも動かせる。 環境を移すときの手間が減る。
もう少し正確に
Dockerを使わなくてもデプロイ自体は可能です。シンプルな静的サイトなどでは不要な場合もあります。ただ、AIエージェントや複数ツールを組み合わせる構成では、使われる場面が多くなります。
ConoHa VPSでは、Dockerが導入されたアプリケーションテンプレートを選んでサーバーを作成できます。Ubuntu 24.04とDocker環境を一から用意する手間を減らせます。n8nやDifyをこの環境にデプロイする活用例も公式に案内されています。
Dockerの説明でよく出てくる5つの言葉
ここだけ知っておけば、他の記事や管理画面で用語に出会っても困りません。
- Dockerfile:1つのイメージを作るための設計書
- Docker Compose:複数のコンテナをまとめて動かす構成表
- ポート:コンテナへアクセスするための入口
- 環境変数:起動時に渡す設定値。APIキーなどにも使う
- ボリューム:コンテナを作り直しても残したいデータの保存場所
1台のVPSに、n8nとDifyと自作アプリを一緒に置きやすいのは、この箱のおかげだったんだ!
1台のVPSに、箱を並べて置く
Coolifyで「複数プロジェクトをまとめて管理できる」と説明したのは、まさにこの仕組みが理由です。1台のVPSの中に、複数のコンテナ(箱)を並べて置いておけます。
スクロールできます
それぞれが独立したコンテナに分かれているため、ライブラリのバージョンが違っても基本的には干渉しにくくなります。
- 利用者がHTTPSでn8nコンテナにアクセスする
- n8nコンテナがPostgreSQLコンテナにデータを保存する
- PostgreSQLコンテナは、保存先としてボリュームを使う
n8n本体やPostgreSQLのコンテナを入れ替えても、PostgreSQLがボリュームに保存したワークフローや設定データは残せます。
ここではシンプルな例を並べていますが、ツールによっては1つのサービスが複数のコンテナで構成されることもあります。たとえばDifyは、画面(Web)・API・データベースなど、複数のコンテナが組み合わさって動く構成です。
もう少し正確に
箱同士は分かれていますが、VPS全体のCPU・メモリは共有しています。コンテナの数を増やすほどリソースを使います。Coolifyを同じVPS上で使う場合、ConoHa公式の要件は最小2コア・2GB、推奨4GB以上です。複数のアプリを動かす場合は、さらに余裕のあるスペックが推奨されています。
CoolifyやDokployとの関係
- GitHubにコードを置く
- Dockerfileなどをもとにビルドする
- Dockerイメージができる
- VPS上でコンテナを起動する
- ポート・ドメインをつないで公開する
Coolifyを使う場合、この流れの多くをCoolifyが画面の裏側で進めてくれます。
Dockerが「箱を作って動かす仕組み」なら、CoolifyやDokployは「その箱を画面から管理するツール」です。裏側では、あなたが直接コマンドを打たなくても、Dockerの仕組みを使ってイメージを作り、そこからコンテナを起動しています。
Dockerを直接触らなくても、Coolify経由で恩恵だけ受けられるってことか。少し安心した。
よくある質問
Dockerは無料で使える?
ConoHa VPS上で使うDocker Engineはオープンソースで、ライセンス料金はかかりません。PC向けのDocker DesktopやDocker Hubなどの関連サービスには、利用条件や有料プランがあります。
Dockerを使うとVPSが重くなる?
仮想マシンよりは軽量ですが、コンテナを増やすほどメモリやCPUを使います。特にビルド時は負荷が上がりやすいため、動かすサービスの数に応じてVPSのスペックを見直すとよいでしょう。
コンテナを作り直すと、データも消える?
コンテナの中にだけ保存したデータは、コンテナを削除すると失われます。データベースやn8nの設定など、残したいデータは「ボリューム」という箱の外の保存場所に置きます。ボリューム自体のバックアップも必要で、Coolify編で触れた「アプリデータのバックアップは利用者側」という話がここにもつながります。
APIキーやパスワードは、どこに書けばいい?
イメージの中に直接書き込むのは避けます。環境変数などを使って、コンテナを起動するときに設定するのが基本です。
「Docker Compose」って何?
複数のコンテナを、まとめて設定・起動するための仕組みです。たとえばDifyは、画面(Web)・API・データベースなど複数のコンテナが組み合わさって動く構成になっています。こうした「必要な箱ひとそろい」を、1つの設定ファイルでまとめて管理するのがDocker Composeです。
Dockerの設定を自分で書く必要がある?
ゼロから書くこともできますが、CoolifyやDokployのテンプレートを使えば、多くの場合は自分で書かずに済みます。仕組みを知っておくと、うまく動かないときの手がかりになります。
次に読む記事
基礎編のつづき
前の記事
全体像に戻る
監修:ConoHa by GMO 最終更新日: 2026年9月30日