Skip to content

Install Docker

gakigaki edited this page Sep 2, 2026 · 64 revisions

Docker を使った開発環境の構築(Windows 10・11)

Windows 10・11で、WSL2とDocker Desktopを使ってConnect-CMSの開発環境を構築する手順です。

セットアップ

WSL2にディストリビューションをインストールする

コマンドプロンプトまたはPowerShellを管理者権限で起動し、次のコマンドを実行します。

wsl --install -d {distribution}

画面の案内に従って、任意のユーザー名とパスワードを設定してください。インストールできるディストリビューションは次のコマンドで確認できます。

wsl -l -o

Docker Desktopをインストールする

Docker Desktopをダウンロードしてインストールします。

Connect-CMSをダウンロードする

VS CodeでWSLのターミナルを開く

  1. VS Codeの拡張機能「WSL」をインストールします。
  2. VS Code左下のリモート接続アイコンをクリックし、「WSL への接続」を選択します。
  3. 「ターミナル」から「新しいターミナル」を選択します。

git cloneする

WSLのターミナルで次のコマンドを実行します。

mkdir src # ディレクトリ名は任意です。
cd src
git clone https://github.com/opensource-workshop/connect-cms.git
cd connect-cms

Important

Connect-CMSはWSL側のファイルシステムに配置してください。Windows側のフォルダをシンボリックリンクで共有すると、ファイルアクセスが遅くなったり、DBコンテナが正常に起動しなかったりすることがあります。

DockerでConnect-CMSを起動する

docker compose build
docker compose up -d

The command 'docker-compose' could not be foundと表示された場合は、Docker Desktopが起動していることを確認してください。

Connect-CMSをセットアップする

docker/webapp/setup.shは、依存パッケージのインストールやLaravelの初期設定を行います。

初回セットアップ(既存データを削除しない)

docker compose run --rm webapp bash docker/webapp/setup.sh

php artisan migrate --forcephp artisan db:seed --forceが実行されます。

データベースを完全に初期化する

SETUP_RESET_DB=1 docker compose run --rm webapp bash docker/webapp/setup.sh

互換性のため、SETUP_MIGRATE_FRESH=1も利用できます。

Warning

この操作では既存テーブルがすべて削除されます。

シードを実行せず、マイグレーションだけを行う

SETUP_SKIP_SEED=1 docker compose run --rm webapp bash docker/webapp/setup.sh

セットアップオプション

変数 役割 デフォルト
SETUP_COMPOSER_FILE 利用するcomposerファイルを指定します。 PHP_INI_ENVまたはAPP_ENVdevelopment / localのときはcomposer-dev.json、それ以外はcomposer.json
SETUP_FORCE_UPDATE_ENV 既存の.envもコンテナ用の値で更新します。 未指定
SETUP_RESET_DB / SETUP_MIGRATE_FRESH 1 / true / yesを指定すると、DBを完全に初期化します。 未指定
SETUP_SKIP_SEED db:seedを実行しません。 未指定

動作確認

ブラウザでhttp://localhost/を開き、Connect-CMSの画面が表示されれば完了です。

開発を再開する

  1. Docker Desktopを起動します。

  2. VS CodeからWSLに接続し、Connect-CMSのディレクトリを開きます。

  3. WSLのターミナルでコンテナを起動します。

    docker compose up -d
  4. 必要に応じてWebアプリケーションコンテナに入ります。

    docker compose exec webapp bash
  5. ブラウザでhttp://localhost/を開きます。

関連ページ

Clone this wiki locally