Shopware

前回は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の機能の紹介をしていきたいと思います。