Magento 2.1.x in Ubuntu localhost Installation Guide 2017 | Magento 2 Tutorials
目次:
- 前提条件
- MySQLデータベースの作成
- システムユーザーの作成
- PHPのインストールと構成
- Composerのインストール
- Magentoのインストール
- Magento crontabの作成
- Nginxの構成
- インストールの検証
- 結論
Magentoは、強力な機能と柔軟性と使いやすいインターフェイスを組み合わせたオープンソーステクノロジーに基づいたエンタープライズクラスのeコマースプラットフォームです。
魅力的なショッピング体験、柔軟なモジュラーアーキテクチャ、エンタープライズグレードのスケーラビリティとパフォーマンスなどの機能を備えたMagentoは、ほとんどのオンラインマーチャントに最適なプラットフォームです。
このチュートリアルでは、Ubuntu 18.04マシンにMagento 2.3をインストールする方法を示します。 NginxをWebサーバーとして使用し、最新のPHP 7.2とMySQL / MariaDBをデータベースサーバーとして使用します。
前提条件
このチュートリアルを続行する前に、次の前提条件を満たしていることを確認してください。
- パブリックサーバーのIPを指すドメイン名を持っています。
example.com
を使用しexample.com
。Nginxは、次の手順に従ってUbuntuサーバーにインストールされます。ユーザー情報を暗号化するためにドメインにインストールされたSSL証明書。 以下の手順に従って、無料のLet's Encrypt SSL証明書をインストールできます。
Magento 2コードリポジトリにアクセスするには、認証キーを生成する必要があります。 Magento Marketplaceアカウントをお持ちでない場合は、ここで作成できます。 アカウントを作成したら、認証キーの新しいセットを生成する方法に関するこれらの指示を確認してください。
システムパッケージを最新バージョンに更新し、unzipユーティリティをインストールします。
sudo apt update && sudo apt upgrade
sudo apt install unzip
MySQLデータベースの作成
サーバーにMySQLまたはMariaDBがインストールされている場合は、この手順をスキップできます。そうでない場合は、次のように入力して、UbuntuのデフォルトリポジトリからMySQL 5.7サーバーパッケージをインストールできます。
sudo apt install mysql-server mysql-client
MySQLの新規インストールの場合、
mysql_secure_installation
コマンドを実行して、MySQLサーバーのセキュリティを改善することをお勧めします。
次のコマンドを使用して、MySQLシェルにログインします。
sudo mysql
MySQLシェル内から、次のSQLステートメントを実行して
magento
という名前の新しいデータベースを作成します。
CREATE DATABASE magento;
次に、
magento
という名前のMySQLユーザーアカウントを作成し、次のコマンドを実行して、ユーザーに必要な権限を付与します。
GRANT ALL ON magento.* TO 'magento'@'localhost' IDENTIFIED BY 'change-with-strong-password';
change-with-strong-password
は強力なパスワードに変更してください。
完了したら、次を入力してMySQLコンソールを終了します。
システムユーザーの作成
Magentoファイルシステムの所有者となる新しいユーザーとグループを作成します。簡単にするために、ユーザーに
magento
という名前を付けます。
sudo useradd -m -U -r -d /opt/magento magento
www-data
ユーザーを
magento
グループに追加し、
/opt/magento
ディレクトリのアクセス許可を変更して、NginxがMagentoインストールにアクセスできるようにします。
sudo usermod -a -G magento www-data
sudo chmod 750 /opt/magento
PHPのインストールと構成
Ubuntu 18.04のデフォルトのPHPバージョンであるPHP 7.2は、Magento 2.3で完全にサポートされ、推奨されています。 NginxをWebサーバーとして使用するため、PHP-FPMパッケージもインストールします。
次のコマンドを実行して、PHPおよび必要なすべてのPHPモジュールをインストールします。
sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap
PHP-FPMサービスは、インストールプロセスの完了後に自動的に開始されます。サービスステータスを出力することで確認できます。
sudo systemctl status php7.2-fpm
出力は、fpmサービスがアクティブで実行中であることを示す必要があります。
● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-12-12 15:47:16 UTC; 5s ago Docs: man:php-fpm7.2(8) Main PID: 16814 (php-fpm7.2) Status: "Ready to handle connections" Tasks: 3 (limit: 505) CGroup: /system.slice/php7.2-fpm.service
sed
::で
php.ini
ファイルを編集して、必須および推奨のPHPオプションを設定します。
sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini
次に、
magento
ユーザーのFPMプールを作成する必要があります。
テキストエディターを開き、次のファイルを作成します。
sudo nano /etc/php/7.2/fpm/pool.d/magento.conf
/etc/php/7.2/fpm/pool.d/magento.conf
user = magento group = www-data listen.owner = magento listen.group = www-data listen = /var/run/php/php7.2-fpm-magento.sock pm = ondemand pm.max_children = 50 pm.process_idle_timeout = 10s pm.max_requests = 500 chdir = /
PHP-FPMサービスを再起動して、変更を有効にします。
systemctl restart php7.2-fpm
次のlsコマンドを実行して、PHPソケットが正常に作成されたかどうかを確認します。
ls -al /var/run/php/php7.2-fpm-magento.sock
出力は次のようになります。
srw-rw---- 1 magento www-data 0 Dec 12 16:07 /var/run/php/php7.2-fpm-magento.sock=
Composerのインストール
ComposerはPHPの依存関係マネージャーであり、これを使用してMagentoコアをダウンロードし、必要なすべてのMagentoコンポーネントをインストールします。
composerをグローバルにインストールするには、curlを使用してComposerインストーラーをダウンロードし、ファイルを
/usr/local/bin
ディレクトリーに移動します。
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
composerのバージョンを印刷して、インストールを確認します。
composer --version
出力は次のようになります。
Composer version 1.8.0 2018-12-03 10:31:16
Magentoのインストール
Magento 2をインストールする方法はいくつかあります。GithubリポジトリからMagentoをインストールすることは避けてください。そのバージョンは本番環境のインストールではなく開発用です。
この記事の執筆時点で、Magentoの最新の安定バージョンはバージョン
2.3.0
です。 このチュートリアルでは、composerを使用してリポジトリからMagentoをインストールします。
次のように入力して、ユーザー
magento
切り替えます。
sudo su - magento
magentoファイルを/ opt / magento / public_htmlディレクトリにダウンロードして、インストールを開始します。
composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition /opt/magento/public_html
アクセスキーを入力し、Magentoマーケットプレイスアカウントからキーをコピーして
auth.json
ファイルに保存するように
auth.json
られるので、後でインストールを更新するときに同じキーを再度追加する必要はありません。
Authentication required (repo.magento.com): Username: e758ec1745d190320ca246e4e832e12c Password: Do you want to store credentials for repo.magento.com in /opt/magento/.config/composer/auth.json ? Y
上記のコマンドは、必要なすべてのPHPパッケージを取得します。 このプロセスには数分かかる場合があります。成功すると、出力の終わりは次のようになります。
Writing lock file Generating autoload files
プロジェクトが作成されたら、Magentoのインストールを開始できます。 Magentoは、コマンドラインから、またはWebセットアップウィザードを使用してインストールできます。 このチュートリアルでは、コマンドラインを使用してMagentoをインストールします。
以下のオプションを使用して、Magentoストアをインストールします。
- ベースおよびベースセキュアURLは
https://example.com
に設定され、domain.Magento管理者で変更します。- 姓と名としての
John
Doe
。[email protected]
をメールとして。 ユーザー名としてjohn
、パスワードとしてj0hnP4ssvv0rD
。
magento
、ユーザー名magento
、パスワードchange-with-strong-password
、およびデータベースサーバーはWebサーバーと同じホスト上にあります。en_US
、デフォルト言語としての米国英語。 デフォルト通貨としての米ドル。 タイムゾーンとしてのAmerica/Chicago
。 - 姓と名としての
Magento〜
~/public_html
ディレクトリに移動します。
cd ~/public_html
次のコマンドを実行して、インストールを開始します。
php bin/magento setup:install --base-url=https://example.com/ \ --base-url-secure=https://example.com/ \ --admin-firstname="John" \ --admin-lastname="Doe" \ --admin-email="[email protected]" \ --admin-user="john" \ --admin-password="j0hnP4ssvv0rD" \ --db-name="magento" \ --db-host="localhost" \ --db-user="magento" \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1 \ --db-password="change-with-strong-password"
パスワード(
j0hnP4ssvv0rD
)をより安全なものに変更することを忘れないでください。
このプロセスには数分かかる場合があり、完了すると、Magento管理ダッシュボードへのURIを含むメッセージが表示されます。
: Magento installation complete.: Magento Admin URI: /admin_13nv5k Nothing to import.
Magento crontabの作成
Magentoはcronジョブを使用して、インデックスの再作成、通知、サイトマップ、電子メールなどのタスクをスケジュールします。
Magento crontabを作成するには、
magento
ユーザーとして次のコマンドを実行します。
php ~/public_html/bin/magento cron:install
Crontab has been generated and saved
次のように入力して、crontabがインストールされていることを確認します。
crontab -l
#~ MAGENTO START adc062915d7b30804a2b340095af072d * * * * * /usr/bin/php7.2 /opt/magento/public_html/bin/magento cron:run 2>&1 | grep -v "Ran jobs by schedule" >> /opt/magento/public_html/var/log/magento.cron.log * * * * * /usr/bin/php7.2 /opt/magento/public_html/update/cron.php >> /opt/magento/public_html/var/log/update.cron.log * * * * * /usr/bin/php7.2 /opt/magento/public_html/bin/magento setup:cron:run >> /opt/magento/public_html/var/log/setup.cron.log #~ MAGENTO END adc062915d7b30804a2b340095af072d
Nginxの構成
このチュートリアルの前提条件を確認しない場合は、すでに、UbuntuサーバーにSSL証明書付きのNginxがインストールされているはずです。
Magentoに同梱されているデフォルトのNginx構成を含めます。
sudoユーザーに切り替え、テキストエディターを開き、次のファイルを作成します。
sudo nano /etc/nginx/sites-available/example.com
/etc/nginx/sites-available/example.com
upstream fastcgi_backend { server unix:/var/run/php/php7.2-fpm-magento.sock; } server { listen 80; server_name example.com www.example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; set $MAGE_ROOT /opt/magento/public_html; set $MAGE_MODE developer; # or production access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; include /opt/magento/public_html/nginx.conf.sample; }
example.comをMagentoドメインに置き換え、SSL証明書ファイルへの正しいパスを設定することを忘れないでください。 この構成で使用されるスニペットは、このガイドで作成されます。
Nginxサービスを再起動する前に、構文エラーがないことを確認するテストを行います。
sudo nginx -t
エラーがない場合、出力は次のようになります。
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
最後に、次のように入力してNginxサービスを再起動します。
インストールの検証
ブラウザを開いてドメインを入力し、インストールが成功すると仮定すると、次のような画面が表示されます。
これで、Magento Admin URIにアクセスし、adminユーザーとしてログインして、新しいMagentoインストールのカスタマイズを開始できます。
結論
おめでとうございます。Magento2.3がUbuntu 18.04サーバーに正常にインストールされました。 これで、ストアのカスタマイズを開始できます。
Magento 2.3開発者向けドキュメントは、Magentoのインストールを管理する方法について詳しく知るための出発点として適しています。
ubuntu magento mysql mariadb php nginx composer ecommerceファーストルック:Ubuntu 7.10デスクトップLinux

「Gutsy Gibbon」リリースは、フラッシュと機能をもたらし、デスクトップLinuxのリーダーとしてUbuntuをリードしています。 Webサイトやデータベースを実行するためのLinuxディストリビューションの選択は簡単です。 Linuxは長年にわたってサーバをうまく処理してきました。しかし、デスクトップ上でLinuxを正しく利用することは常に困難でした。そのため、Ubuntuは3年前に初めて登場したときにこのような話題を呼びました。 Ubuntuバージョン7.10(コードネームGutsy Gibbon)は、グラフィクスの改善、ソフトウェアインストールの簡素化、およびソフトウェアのマイナーな改良など、過去の成功を基盤にしています。
デスクトップLinux Face-Off:Ubuntu 8.04対Fedora 9

世界最大の2つの新バージョンLinuxのディストリビューションが勢ぞろいしています。彼らはどのようにマッチするのですか?
Ubuntu 9.04 Beta:クイックルック

Ubuntu Jaunty Jackalopeの予定されたベータ版が到着しました。ここでは、どのように形作っているかを見ていきます。