DevenvによるShopware「6.5系」の環境構築(WSL2)
前回はDockwareによるShopware6.5の環境構築についてご紹介しました。
今回は、Dockwareと同じくShopware公式で紹介されている、「Devenv」での構築を紹介します。
但し、Devenvでの構築は、以下の問題点により筆者はあまりオススメしません。
- コンテナ化、仮想化と異なり、サービスがマシン上でネイティブに実行されます。従って、環境の管理が複雑になり、ホストマシンのリソースの制約も受けます。
- shopware/productionリポジトリを使用する場合、devenvをインストールする前にリポジトリをインストールしておく必要があります。従って、PHP及び拡張モジュール、Composerをホストマシンにインストールする必要があります。
本記事では、「こういう構築方法もある」ということでご紹介させていただきます。
実行環境
WSL2: 1.2.5.0
Ubuntu: 22.04
shopware/production: 6.5(shopware/core: 6.5.3.0)
環境構築
まず、Shopwareリポジトリをインストールするために、ホストマシンにPHPをインストールします。
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2 php8.2-curl php8.2-dom php8.2-gd php8.2-intl php8.2-mbstring php8.2-zip php8.2-mysql
Composerをインストールします。
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer
Shopwareのリポジトリをインストールします。
composer create-project shopware/production .
Devenvのリポジトリをインストールします。
composer require devenv
Devenvの環境構築に必要なパッケージ管理システムNixをインストールします。
sh <(curl -L https://nixos.org/nix/install) --no-daemon
環境変数を設定するために、下記のシェルスクリプトを実行します。
. ~/.nix-profile/etc/profile.d/nix.sh
インストールの高速化のために、Cashixをインストールします。
nix-env -iA cachix -f https://cachix.org/api/v1/install
CashixがDevenvのキャッシュを利用するように設定します。
cachix use devenv
Devenvをインストールします。
nix-env -if https://github.com/cachix/devenv/tarball/latest
CachixがShopwareのキャッシュを利用するように設定します。
cachix use shopware
Shopwareをインストールしたディレクトリ(Devenvの設定ファイルであるdevenv.nixが生成されています。)でDevenv環境を立ち上げます。
devenv up
devenv up はフォアグラウンドで実行されるため、新しいシェルを立ち上げます。
Shopwareをインストールしたディレクトリに生成された.envファイルの下記部分を修正します。
DATABASE_URL="mysql://shopware:shopware@127.0.0.1:3306/shopware?sslmode=disable&charset=utf8mb4"
Devenvのシェルを立ち上げます。
devenv shell
Shopwareをインストールします。
bin/console system:install --basic-setup --create-database --force
ここまででShopwareのインストールは完了です。
下記のURLからフロント画面、管理画面が表示されることを確認してみましょう。
フロント画面、管理画面のほかに、DBをブラウザ上で操作できるAdminerや、開発用のメールサーバーであるMailhogが使用できます。
http://localhost:8000 (フロント画面)
http://localhost:8000/admin (管理画面)
http://localhost:8010(Adminer)
http://localhost:8025(Mailhog)
尚、管理画面は下記のログイン情報で入ることができます。
Username: admin
Password: shopware
Adminerは下記ログイン情報で入ることができます。
ユーザー名: shopware
パスワード: shopware
データベース: shopware
以下の画像の通りに表示されれば成功です。
フロント画面:
管理画面:
次回予告
今回はDevenvによるShopware6.5系のインストール方法をご紹介しました。
次回はいよいよShopwareの機能の紹介をしていきたいと思います。