この記事は6分00秒で読めます。

皆さん、こんにちは! EC-CUBERの木下です。

▼EC-CUBERは、総合的なECソリューションをご提供するEC-CUBEのプロフェッショナル集団です!
https://ec-cuber.jp/service/
▼関連:EC-CUBEとは?
https://ec-cuber.jp/about/

今回は、Amazon Linux2にEC-CUBE4.0.4をインストールしていきたいと思います!

筆者はインフラ初心者です。
AWSはSAAの資格を持っていますが、コンソールは殆ど触ったことがありませんでした。

そんな中、AWSの基本構成に最新のEC-CUBEをインストールして、ダミーデータも作成できるようにせよとの任が課せられました。

四苦八苦したものの何とかテスト用の環境を作ることが出来たので、その手順を記載します。
実際のコードやキャプチャを交えながら、これから、全3回に分けてご紹介したいと思います。

要件

  • Amazon Linux 2
  • RDS(MySQL)
  • PHP7.2(公式ドキュメント上でEC-CUBE4.0動作確認済のものがver.7.2.19までのため)
  • EC-CUBE4.0.4(2020/08/07時点最新)

▼関連:EC-CUBE4系のご紹介
https://ec-cuber.jp/eccube4/
詳細は、ご確認しやすいように資料にもおまとめしてます。無料DL可能ですので、ご興味があればどうぞ。
https://ec-cuber.jp/eccube4-download/

ゴール

Amazon Linux2にEC-CUBE4.0.4をインストールし、デフォルト状態でブラウザからアクセスできる。 また、ダミーデータを作るコマンドも実行できる。

使用ツール

PuTTY(SSHクライアントソフトであれば何でも)

手順

具体的な手順の流れは下記となります。

  1. インスタンスにSSHアクセス+初期設定
  2. RDS疎通確認+空DB作成
  3. Apache インストール+自動起動設定
  4. PHP+ミドルウェアのインストール
  5. Gitを入れる
  6. ディレクトリ・ファイル操作権限
  7. composerインストール
  8. EC-CUBEインストール
  9. ダミーデータ作成

手順4~6は、こちらの記事でご紹介します。
▼関連記事:Amazon Linux2にEC-CUBE4.0.4をインストールする手順~2~
https://ec-cuber.jp/etc/column09-2/
手順7~9は、こちらの記事でご紹介します。
▼関連記事:Amazon Linux2にEC-CUBE4.0.4をインストールする手順~3~
https://ec-cuber.jp/news-column/column09-3/


<1.インスタンスにSSHアクセス+初期設定>に取り掛かるまでの
インスタンス+RDS構築の流れは、下記を参考にさせていただきました。
今回はテスト用に環境を作成したので、Elastic IPはなしで行っています。

【AWS初心者向け】AWSでWebサーバーとデータベースを構築して、ブラウザにデータを表示する【ハンズオン】

以下の手順には、一部上記参考サイトと重なっている箇所もあります。
ご了承ください。

1.インスタンスにSSHアクセス+初期設定

  1. 実行中のインスタンス一覧から作成したインスタンスの説明を確認し、IPv4パブリックIPを控えておく
  2.  控えておいたIPアドレスにSSHクライアントソフト(筆者の場合はPuTTY)でSSHアクセス

ユーザー名は【ec2-user】、認証は鍵ファイルを使用
※下記はPuTTYの例ですが、初回アクセス時は必ずダイアログが表示されます。成りすましでないかどうかを確認するものなので、ホスト鍵に問題なければ【はい】をクリックしてください。

3.  コマンドを実行

rootユーザー切替
[ec2-user@ip-x-x-x-x ~]$ sudo su -
[root@ip-x-x-x-x ~]#

タイムゾーンをJSTに変更
[root@ip-x-x-x-x ~]# timedatectl set-timezone Asia/Tokyo
[root@ip-x-x-x-x ~]#

 文字コードを日本語対応に変更
[root@ip-x-x-x-x ~]# sed -i "s/en_US\.UTF-8/ja_JP\.UTF-8/g" /etc/sysconfig/i18n
[root@ip-x-x-x-x ~]#

パッケージ管理ツールyumのアップデート
[root@ip-X-X-X-X ~]# yum update -y
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
Resolving Dependencies
--> Running transaction check
---> Package amazon-linux-extras.noarch 0:1.6.11-1.amzn2 will be updated
---> Package amazon-linux-extras.noarch 0:1.6.12-1.amzn2 will be an update
---> Package amazon-linux-extras-yum-plugin.noarch 0:1.6.11-1.amzn2 will be upda                                  ted
---> Package amazon-linux-extras-yum-plugin.noarch 0:1.6.12-1.amzn2 will be an u                                  pdate
---> Package ca-certificates.noarch 0:2019.2.32-76.amzn2.0.2 will be updated
---> Package ca-certificates.noarch 0:2019.2.32-76.amzn2.0.3 will be an update
---> Package python.x86_64 0:2.7.18-1.amzn2 will be updated
---> Package python.x86_64 0:2.7.18-1.amzn2.0.1 will be an update
---> Package python-devel.x86_64 0:2.7.18-1.amzn2 will be updated
---> Package python-devel.x86_64 0:2.7.18-1.amzn2.0.1 will be an update
---> Package python-libs.x86_64 0:2.7.18-1.amzn2 will be updated
---> Package python-libs.x86_64 0:2.7.18-1.amzn2.0.1 will be an update
---> Package python2-rsa.noarch 0:3.4.1-1.amzn2 will be updated
---> Package python2-rsa.noarch 0:3.4.1-1.amzn2.0.1 will be an update
---> Package tzdata.noarch 0:2019c-1.amzn2 will be updated
---> Package tzdata.noarch 0:2020a-1.amzn2 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package                        Arch   Version                 Repository  Size
================================================================================
Updating:
 amazon-linux-extras            noarch 1.6.12-1.amzn2          amzn2-core  36 k
 amazon-linux-extras-yum-plugin noarch 1.6.12-1.amzn2          amzn2-core  10 k
 ca-certificates                noarch 2019.2.32-76.amzn2.0.3  amzn2-core 391 k
 python                         x86_64 2.7.18-1.amzn2.0.1      amzn2-core  92 k
 python-devel                   x86_64 2.7.18-1.amzn2.0.1      amzn2-core 403 k
 python-libs                    x86_64 2.7.18-1.amzn2.0.1      amzn2-core 7.5 M
 python2-rsa                    noarch 3.4.1-1.amzn2.0.1       amzn2-core  68 k
 tzdata                         noarch 2020a-1.amzn2           amzn2-core 479 k

Transaction Summary
================================================================================
Upgrade  8 Packages

Total download size: 9.0 M
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/8): amazon-linux-extras-yum-plugin-1.6.12-1.amzn2.noarc |  10 kB   00:00
(2/8): amazon-linux-extras-1.6.12-1.amzn2.noarch.rpm       |  36 kB   00:00
(3/8): python-2.7.18-1.amzn2.0.1.x86_64.rpm                |  92 kB   00:00
(4/8): ca-certificates-2019.2.32-76.amzn2.0.3.noarch.rpm   | 391 kB   00:00
(5/8): python-devel-2.7.18-1.amzn2.0.1.x86_64.rpm          | 403 kB   00:00
(6/8): python2-rsa-3.4.1-1.amzn2.0.1.noarch.rpm            |  68 kB   00:00
(7/8): tzdata-2020a-1.amzn2.noarch.rpm                     | 479 kB   00:00
(8/8): python-libs-2.7.18-1.amzn2.0.1.x86_64.rpm           | 7.5 MB   00:00
--------------------------------------------------------------------------------
Total                                               28 MB/s | 9.0 MB  00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Updating   : python-libs-2.7.18-1.amzn2.0.1.x86_64                            1/16
  Updating   : python-2.7.18-1.amzn2.0.1.x86_64                                   2/16
  Updating   : amazon-linux-extras-1.6.12-1.amzn2.noarch                    3/16
  Updating   : amazon-linux-extras-yum-plugin-1.6.12-1.amzn2.noarch 4/16
  Updating   : python-devel-2.7.18-1.amzn2.0.1.x86_64                         5/16
  Updating   : python2-rsa-3.4.1-1.amzn2.0.1.noarch                             6/16
  Updating   : ca-certificates-2019.2.32-76.amzn2.0.3.noarch                7/16
  Updating   : tzdata-2020a-1.amzn2.noarch                                           8/16
  Cleanup    : python-devel-2.7.18-1.amzn2.x86_64                               9/16
  Cleanup    : amazon-linux-extras-yum-plugin-1.6.11-1.amzn2.noarch  10/16
  Cleanup    : amazon-linux-extras-1.6.11-1.amzn2.noarch                     11/16
  Cleanup    : python2-rsa-3.4.1-1.amzn2.noarch                                    12/16
  Cleanup    : ca-certificates-2019.2.32-76.amzn2.0.2.noarch                13/16
  Cleanup    : tzdata-2019c-1.amzn2.noarch                                           14/16
  Cleanup    : python-2.7.18-1.amzn2.x86_64                                         15/16
  Cleanup    : python-libs-2.7.18-1.amzn2.x86_64                                  16/16
  Verifying  : python-devel-2.7.18-1.amzn2.0.1.x86_64                          1/16
  Verifying  : python-2.7.18-1.amzn2.0.1.x86_64                                    2/16
  Verifying  : tzdata-2020a-1.amzn2.noarch                                            3/16
  Verifying  : python2-rsa-3.4.1-1.amzn2.0.1.noarch                               4/16
  Verifying  : python-libs-2.7.18-1.amzn2.0.1.x86_64                              5/16
  Verifying  : amazon-linux-extras-1.6.12-1.amzn2.noarch                      6/16
  Verifying  : amazon-linux-extras-yum-plugin-1.6.12-1.amzn2.noarch   7/16
  Verifying  : ca-certificates-2019.2.32-76.amzn2.0.3.noarch                  8/16
  Verifying  : amazon-linux-extras-1.6.11-1.amzn2.noarch                      9/16
  Verifying  : python-2.7.18-1.amzn2.x86_64                                           10/16
  Verifying  : python2-rsa-3.4.1-1.amzn2.noarch                                      11/16
  Verifying  : python-devel-2.7.18-1.amzn2.x86_64                                  12/16
  Verifying  : python-libs-2.7.18-1.amzn2.x86_64                                     13/16
  Verifying  : ca-certificates-2019.2.32-76.amzn2.0.2.noarch                   14/16
  Verifying  : amazon-linux-extras-yum-plugin-1.6.11-1.amzn2.noarch    15/16
  Verifying  : tzdata-2019c-1.amzn2.noarch                                             16/16

Updated:
  amazon-linux-extras.noarch 0:1.6.12-1.amzn2          amazon-linux-extras-yum-plugin.noarch 0:1.6.12-1.amzn2
  ca-certificates.noarch 0:2019.2.32-76.amzn2.0.3      python.x86_64 0:2.7.18-1.amzn2.0.1
  python-devel.x86_64 0:2.7.18-1.amzn2.0.1             python-libs.x86_64 0:2.7.18-1.amzn2.0.1
  python2-rsa.noarch 0:3.4.1-1.amzn2.0.1               tzdata.noarch 0:2020a-1.amzn2

Complete!
[root@ip-X-X-X-X ~]#

2.RDS疎通確認+空DB作成

  1. rootユーザーのままコマンドを実行
MySQLクライアントのインストール
[root@ip-X-X-X-X ~]# yum install -y mysql
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
amzn2-core                                                                                 | 3.7 kB  00:00:00
Resolving Dependencies
--> Running transaction check
---> Package mariadb.x86_64 1:5.5.64-1.amzn2 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==================================================================================================================
 Package                 Arch                   Version                          Repository                  Size
==================================================================================================================
Installing:
 mariadb                 x86_64                 1:5.5.64-1.amzn2                 amzn2-core                 9.0 M

Transaction Summary
==================================================================================================================
Install  1 Package

Total download size: 9.0 M
Installed size: 49 M
Downloading packages:
mariadb-5.5.64-1.amzn2.x86_64.rpm                                                          | 9.0 MB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : 1:mariadb-5.5.64-1.amzn2.x86_64                                                                1/1
  Verifying  : 1:mariadb-5.5.64-1.amzn2.x86_64                                                                1/1

Installed:
  mariadb.x86_64 1:5.5.64-1.amzn2

Complete!
[root@ip-X-X-X-X ~]#

MySQLにログイン
[ec2-user@ip-X-X-X-X ~]$ mysql -h RDSエンドポイント -P 3306 -u ユーザー名 -p
Enter password:   # パスワード入力を求められるため入力
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 18
Server version: 5.5.61-log Source distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

ログインに成功したら、空のDBを作成
MySQL [(none)]> create database DB名;
Query OK, 1 row affected (0.01 sec)

 ログアウト
MySQL [(none)]> exit;
Bye
[ec2-user@ip-X-X-X-X ~]$ 


3.Apache インストール+自動起動設定

  1. rootユーザーのままコマンドを実行
 apacheのインストール
[root@ip-X-X-X-X ~]# yum install -y httpd
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
Resolving Dependencies
--> Running transaction check
---> Package httpd.x86_64 0:2.4.43-1.amzn2 will be installed
--> Processing Dependency: httpd-tools = 2.4.43-1.amzn2 for package: httpd-2.4.43-1.amzn2.x86_64
--> Processing Dependency: httpd-filesystem = 2.4.43-1.amzn2 for package: httpd-2.4.43-1.amzn2.x86_64
--> Processing Dependency: system-logos-httpd for package: httpd-2.4.43-1.amzn2.x86_64
--> Processing Dependency: mod_http2 for package: httpd-2.4.43-1.amzn2.x86_64
--> Processing Dependency: httpd-filesystem for package: httpd-2.4.43-1.amzn2.x86_64
--> Processing Dependency: /etc/mime.types for package: httpd-2.4.43-1.amzn2.x86_64
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-2.4.43-1.amzn2.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-2.4.43-1.amzn2.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.6.3-5.amzn2.0.2 will be installed
---> Package apr-util.x86_64 0:1.6.1-5.amzn2.0.2 will be installed
--> Processing Dependency: apr-util-bdb(x86-64) = 1.6.1-5.amzn2.0.2 for package: apr-util-1.6.1-5.amzn2.0.2.x86_64
---> Package generic-logos-httpd.noarch 0:18.0.0-4.amzn2 will be installed
---> Package httpd-filesystem.noarch 0:2.4.43-1.amzn2 will be installed
---> Package httpd-tools.x86_64 0:2.4.43-1.amzn2 will be installed
---> Package mailcap.noarch 0:2.1.41-2.amzn2 will be installed
---> Package mod_http2.x86_64 0:1.15.3-2.amzn2 will be installed
--> Running transaction check
---> Package apr-util-bdb.x86_64 0:1.6.1-5.amzn2.0.2 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==================================================================================================================
 Package                         Arch               Version                          Repository              Size
==================================================================================================================
Installing:
 httpd                           x86_64             2.4.43-1.amzn2                   amzn2-core             1.3 M
Installing for dependencies:
 apr                             x86_64             1.6.3-5.amzn2.0.2                amzn2-core             118 k
 apr-util                        x86_64             1.6.1-5.amzn2.0.2                amzn2-core              99 k
 apr-util-bdb                    x86_64             1.6.1-5.amzn2.0.2                amzn2-core              19 k
 generic-logos-httpd             noarch             18.0.0-4.amzn2                   amzn2-core              19 k
 httpd-filesystem                noarch             2.4.43-1.amzn2                   amzn2-core              23 k
 httpd-tools                     x86_64             2.4.43-1.amzn2                   amzn2-core              87 k
 mailcap                         noarch             2.1.41-2.amzn2                   amzn2-core              31 k
 mod_http2                       x86_64             1.15.3-2.amzn2                   amzn2-core             146 k

Transaction Summary
==================================================================================================================
Install  1 Package (+8 Dependent packages)

Total download size: 1.8 M
Installed size: 5.1 M
Downloading packages:
(1/9): apr-util-1.6.1-5.amzn2.0.2.x86_64.rpm                                               |  99 kB  00:00:00
(2/9): apr-1.6.3-5.amzn2.0.2.x86_64.rpm                                                    | 118 kB  00:00:00
(3/9): apr-util-bdb-1.6.1-5.amzn2.0.2.x86_64.rpm                                           |  19 kB  00:00:00
(4/9): generic-logos-httpd-18.0.0-4.amzn2.noarch.rpm                                       |  19 kB  00:00:00
(5/9): httpd-filesystem-2.4.43-1.amzn2.noarch.rpm                                          |  23 kB  00:00:00
(6/9): httpd-2.4.43-1.amzn2.x86_64.rpm                                                     | 1.3 MB  00:00:00
(7/9): httpd-tools-2.4.43-1.amzn2.x86_64.rpm                                               |  87 kB  00:00:00
(8/9): mailcap-2.1.41-2.amzn2.noarch.rpm                                                   |  31 kB  00:00:00
(9/9): mod_http2-1.15.3-2.amzn2.x86_64.rpm                                                 | 146 kB  00:00:00
------------------------------------------------------------------------------------------------------------------
Total                                                                             8.0 MB/s | 1.8 MB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : apr-1.6.3-5.amzn2.0.2.x86_64                                                                   1/9
  Installing : apr-util-bdb-1.6.1-5.amzn2.0.2.x86_64                                                          2/9
  Installing : apr-util-1.6.1-5.amzn2.0.2.x86_64                                                              3/9
  Installing : httpd-tools-2.4.43-1.amzn2.x86_64                                                              4/9
  Installing : generic-logos-httpd-18.0.0-4.amzn2.noarch                                                      5/9
  Installing : mailcap-2.1.41-2.amzn2.noarch                                                                  6/9
  Installing : httpd-filesystem-2.4.43-1.amzn2.noarch                                                         7/9
  Installing : mod_http2-1.15.3-2.amzn2.x86_64                                                                8/9
  Installing : httpd-2.4.43-1.amzn2.x86_64                                                                    9/9
  Verifying  : apr-util-1.6.1-5.amzn2.0.2.x86_64                                                              1/9
  Verifying  : apr-util-bdb-1.6.1-5.amzn2.0.2.x86_64                                                          2/9
  Verifying  : httpd-2.4.43-1.amzn2.x86_64                                                                    3/9
  Verifying  : mod_http2-1.15.3-2.amzn2.x86_64                                                                4/9
  Verifying  : httpd-filesystem-2.4.43-1.amzn2.noarch                                                         5/9
  Verifying  : apr-1.6.3-5.amzn2.0.2.x86_64                                                                   6/9
  Verifying  : mailcap-2.1.41-2.amzn2.noarch                                                                  7/9
  Verifying  : generic-logos-httpd-18.0.0-4.amzn2.noarch                                                      8/9
  Verifying  : httpd-tools-2.4.43-1.amzn2.x86_64                                                              9/9

Installed:
  httpd.x86_64 0:2.4.43-1.amzn2

Dependency Installed:
  apr.x86_64 0:1.6.3-5.amzn2.0.2                         apr-util.x86_64 0:1.6.1-5.amzn2.0.2
  apr-util-bdb.x86_64 0:1.6.1-5.amzn2.0.2                generic-logos-httpd.noarch 0:18.0.0-4.amzn2
  httpd-filesystem.noarch 0:2.4.43-1.amzn2               httpd-tools.x86_64 0:2.4.43-1.amzn2
  mailcap.noarch 0:2.1.41-2.amzn2                        mod_http2.x86_64 0:1.15.3-2.amzn2

Complete!
[root@ip-X-X-X-X ~]#

apache設定ファイルを開く

viエディタの使い方はこちらをご参考にしてみてください!
[ viエディタの使い方 ]https://prev.net-newbie.com/linux/commands/vi.html

[root@ip-X-X-X-X ~]# vi /etc/httpd/conf/httpd.conf
PHPファイルを認識させるため、<IfModule mime_module>~</IfModule> 内に以下の記述を追加
<IfModule mime_module>
    ### 省略 ###

    AddType application/x-httpd-php .php    #←追加
</IfModule>


 EC-CUBEの.htaccessを有効にするため、<Directory “/var/www/html”>~</Directory> 内の「AllowOverride None」を、下記のように書き換える
<Directory "/var/www/html">
    ### 省略 ###

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    # AllowOverride None    #←コメントアウト
    AllowOverride All    #←追加

    ### 省略 ###
</Directory>

# apache設定ファイルを閉じる

apacheが自動で起動するよう設定する
[root@ip-X-X-X-X ~]# systemctl enable httpd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@ip-X-X-X-X ~]#

皆さま、お疲れ様でした。手順1~3まではこれで完了です。

この調子で次は、
4. PHP+ミドルウェアのインストール
5. Gitを入れる
6. ディレクトリ・ファイル操作権限
をしていきましょう↓
https://ec-cuber.jp/etc/column09-2/


EC-CUBERでは、今回のようなTechブログの他にも、皆様のECビジネス成功をお助けする情報を随時更新していきます。
特に、弊社はEC-CUBEのプロフェッショナルですので、EC-CUBEのことなら、何でもご相談・お任せください!
▼問合せフォームから相談してみる。
https://ec-cuber.jp/contact-us/
▼電話で相談してみる。
03-6386-3652 

以上、木下でした!