0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【完全ガイド】初心者向けDocker入門(PHP Hello World実践付き)

Posted at

Docker入門:初心者向け完全ガイド(PHP実践付き)

Dockerは、開発環境の構築やアプリケーションのデプロイを効率化するためのコンテナ技術です。本記事では、Dockerの基本概念からインストール方法、PHPを用いた実践的な利用方法までを初心者向けに解説します。

Dockerとは?

Dockerは、アプリケーションとその依存関係をコンテナという単位でまとめ、どこでも一貫して動作させることができる技術です。仮想マシンと比較して、軽量で高速な起動が特徴です。

コンテナと仮想マシンの違い

特徴 コンテナ(Docker) 仮想マシン(VM)
起動速度 数秒 数分
リソース消費 少ない 多い
環境の一貫性 高い 低い
適用シーン 開発・テスト・本番環境 本番環境・大規模システム

Dockerのインストール方法

Windows

  1. Docker Desktop公式サイトからインストーラーをダウンロード
  2. インストール後、再起動してDocker Desktopを起動
  3. タスクバーにアイコンが表示されれば成功

macOS

  1. Docker Desktop for Macをダウンロード
  2. インストーラーを開いてアプリケーションフォルダに移動
  3. 初回起動時に権限を求められるので許可
  4. アイコンが表示されれば準備完了

Linux(Ubuntu)

sudo apt update
sudo apt install ca-certificates curl gnupg
# 古いDockerパッケージの削除
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
# Docker公式GPGキー追加
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

PHPでHello WorldをDockerで実行する

ディレクトリ構成

docker-php-hello/
├── Dockerfile
└── index.php

Dockerfileの作成

# PHP公式CLIイメージを使用
FROM php:8.2-cli

# 作業ディレクトリを作成
WORKDIR /app

# PHPスクリプトをコンテナにコピー
COPY index.php .

# コンテナ起動時にPHPスクリプトを実行
CMD ["php", "index.php"]

index.phpの作成

<?php
echo "Hello World from Docker!\n";

コンテナのビルドと実行

コンテナをビルド
docker build -t php-hello .

コンテナを実行

docker run --rm php-hello

実行すると以下が表示されます:

Hello World from Docker!

まとめ

本記事では、初心者向けにDockerの基本からPHPでのHello World実践までを解説しました。ポイントを整理します。

  • Dockerの特徴

    • アプリケーションと依存関係をまとめてどこでも同じ環境で動かせる
    • 仮想マシンより軽量で高速
  • 環境構築の手順

    • Windows、macOS、Ubuntuそれぞれに対応したDockerインストール方法
    • 初心者でも簡単にセットアップ可能
  • PHPでの実践

    • Dockerfileとindex.phpを用意してコンテナをビルド
    • docker runでHello Worldを実行
    • 簡単にコンテナの動作確認ができる
  • 学習のポイント

    • まずは小さなプロジェクトでDockerに慣れる
    • PHP以外の言語やフレームワークも応用可能
    • Docker Composeなどを使えば複数コンテナでの開発も簡単

Dockerは初心者でも扱いやすく、学ぶことで開発・デプロイの効率が大幅にアップします。まずは公式イメージを使った簡単なプロジェクトから始め、少しずつ応用してみましょう。

こちらでもご覧いただけます

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?