# Dockerfile の例(コンテナの定義)
FROM node:18
WORKDIR /app
COPY . .
RUN npm install
CMD ["node", "server.js"]コンテナ技術は、現代のソフトウェア開発や運用(DevOps)において標準的なアプローチとなっています。従来のサーバー環境では、あるアプリケーションを動かすために必要な設定やライブラリのバージョンが、別のアプリケーションと競合することが頻繁に起きていました。例えば、「システムAはPHP 7が必要だが、システムBはPHP 8が必要」といったケースです。これを1台のサーバーで共存させるのは非常に手間がかかりました。コンテナを利用すれば、システムAとシステムBを別々のコンテナとして隔離し、それぞれの箱の中に必要なバージョンのPHPやライブラリを同梱できます。ホストOSからは単なる1つのプロセスとして見えるため、仮想マシンのようにゲストOSを起動するオーバーヘッドがなく、CPUやメモリの消費量も劇的に少なく済みます。