LoginSignup
7
8

More than 5 years have passed since last update.

AWS上で構築するRESTfulアプリ勉強会~Web開発ワークショップ~【第1回】の事前準備内容まとめ

Last updated at Posted at 2015-01-28

本投稿は、2015/1/23に行われたAWS上で構築するRESTfulアプリ勉強会~Web開発ワークショップ~【第1回】に向けて運営側が行った準備作業に関するまとめです。
当日使用した資料は、加筆(かなり修正しました)して公開しています。
AWS上で構築するRESTfulアプリ勉強会~Web開発ワークショップ~【第1回】の当日実施内容まとめ - Qiita

AMI作成

AMIの元にするEC2インスタンス作成

AWS Management Consoleから下記手順で。

開始!

InstancesからLaunch Instances をクリック

Launch_Instance.png

元とするAMIを選択

Amazon Linux AMI 2014.09.1 (HVM) - ami-4985b048
を選択。Selectをクリック。

ec2_step1.png

インスタンスタイプを選択

t2.microを選択。Nextをクリック。

![ec2_step2.png]ec2_step2.png

インスタンス詳細設定

下記の通り設定。Nextをクリック。

  • Number of instances - 1
  • Purchasing option - [ ]Request Spot Instances(チェックしない)
  • Network - default
  • Subnet - default
  • Auto-assign Public IP - Use subnet setting
  • IAM role - None
  • Shutdown behavior - Stop
  • Enable termination protection - [x]Protect against accidental termination(チェック入れる)
  • Monitoring - [ ] Enable CloudWatch detailed monitoring(チェックしない)
  • Tenancy- Shared tenancy
  • Advanced Details - なし

ec2_step3.png

ストレージ設定

General Purpose(SSD)に変更(無料枠)。Nextをクリック。

ec2_step4.png

タグ設定

Nameのみ設定。適当でよい(例ではstudy_01_172_31_0_1)。Nextをクリック。

ec2_step5.png

セキュリティグループ設定

SSH, HTTPのみ。SourceIPはMyIP(設定時のGlobalIP)に限定。

  • SSH - TCP, 22, MyIP
  • HTTP - TCP, 22, MyIP

IP確認は下記にアクセスしてもOK。

ここまでで設定終わり。Review and Launchをクリック。
ec2_step6.png

確認画面(Review Instance Launch)

Launchをクリック。

ec2_step7.png

キーペアを設定。選択or新規作成。Launch Instancesをクリック。

ec2_step7_create_key.png

成功!
ec2_finish.png

View Instancesをクリック。見えた。
ec2_view.png

SSH接続してみる

GlobalIPに対してSSHコマンド実行。

事前に、Privateキーファイルを ~/.sshなどにコピーしておく。

※パーミッションに注意。ログインユーザ以外は読み書き不可にしておく。

ssh -i ~/.ssh/XXXXXXX.pem ec2-user@XXX.XXX.XXX.XXX

OK!

AMIにプレインストール、設定しておくもの

Apacheインストール

バージョンは2.4にする。

rootになる。

sudo -i

yum install -y httpd24を実行してインストール。

[root ~]# yum install -y httpd24
読み込んだプラグイン:priorities, update-motd, upgrade-helper
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ httpd24.x86_64 0:2.4.10-1.59.amzn1 を インストール
--> 依存性の処理をしています: httpd24-tools = 2.4.10-1.59.amzn1 のパッケージ: httpd24-2.4.10-1.59.amzn1.x86_64
--> 依存性の処理をしています: /etc/mime.types のパッケージ: httpd24-2.4.10-1.59.amzn1.x86_64
--> 依存性の処理をしています: libaprutil-1.so.0()(64bit) のパッケージ: httpd24-2.4.10-1.59.amzn1.x86_64
--> 依存性の処理をしています: libapr-1.so.0()(64bit) のパッケージ: httpd24-2.4.10-1.59.amzn1.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ apr.x86_64 0:1.5.0-2.11.amzn1 を インストール
---> パッケージ apr-util.x86_64 0:1.4.1-4.14.amzn1 を インストール
---> パッケージ httpd24-tools.x86_64 0:2.4.10-1.59.amzn1 を インストール
---> パッケージ mailcap.noarch 0:2.1.31-2.7.amzn1 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

=========================================================================================================================================================================================================
 Package                                           アーキテクチャー                           バージョン                                             リポジトリー                                   容量
=========================================================================================================================================================================================================
インストール中:
 httpd24                                           x86_64                                     2.4.10-1.59.amzn1                                      amzn-main                                     1.3 M
依存性関連でのインストールをします:
 apr                                               x86_64                                     1.5.0-2.11.amzn1                                       amzn-main                                     115 k
 apr-util                                          x86_64                                     1.4.1-4.14.amzn1                                       amzn-main                                      87 k
 httpd24-tools                                     x86_64                                     2.4.10-1.59.amzn1                                      amzn-main                                      85 k
 mailcap                                           noarch                                     2.1.31-2.7.amzn1                                       amzn-main                                      27 k

トランザクションの要約
=========================================================================================================================================================================================================
インストール  1 パッケージ (+4 個の依存関係のパッケージ)

総ダウンロード容量: 1.6 M
インストール容量: 4.2 M
Downloading packages:
(1/5): apr-1.5.0-2.11.amzn1.x86_64.rpm                                                                                                                                            | 115 kB     00:00     
(2/5): apr-util-1.4.1-4.14.amzn1.x86_64.rpm                                                                                                                                       |  87 kB     00:00     
(3/5): httpd24-2.4.10-1.59.amzn1.x86_64.rpm                                                                                                                                       | 1.3 MB     00:00     
(4/5): httpd24-tools-2.4.10-1.59.amzn1.x86_64.rpm                                                                                                                                 |  85 kB     00:00     
(5/5): mailcap-2.1.31-2.7.amzn1.noarch.rpm
|  27 kB     00:00
合計 4.3 MB/s | 1.6 MB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 インストール中 : apr-1.5.0-2.11.amzn1.x86_64 1/5
 インストール中 : apr-util-1.4.1-4.14.amzn1.x86_64 2/5
 インストール中 : httpd24-tools-2.4.10-1.59.amzn1.x86_64 3/5
 インストール中 : mailcap-2.1.31-2.7.amzn1.noarch 4/5
 インストール中 : httpd24-2.4.10-1.59.amzn1.x86_64 5/5
 検証中 : apr-1.5.0-2.11.amzn1.x86_64 1/5
 検証中 : httpd24-tools-2.4.10-1.59.amzn1.x86_64 2/5
 検証中 : apr-util-1.4.1-4.14.amzn1.x86_64 3/5
 検証中 : mailcap-2.1.31-2.7.amzn1.noarch 4/5
 検証中 : httpd24-2.4.10-1.59.amzn1.x86_64 5/5

インストール:
 httpd24.x86_64 0:2.4.10-1.59.amzn1

依存性関連をインストールしました:
 apr.x86_64 0:1.5.0-2.11.amzn1 apr-util.x86_64 0:1.4.1-4.14.amzn1 httpd24-tools.x86_64 0:2.4.10-1.59.amzn1 mailcap.noarch 0:2.1.31-2.7.amzn1

完了しました!
[root ~]#

自動起動を設定。

 chkconfig httpd on

再起動は下記コマンド。

service httpd restart

http://(Global IP)
にアクセスしてみる。

OK!

apache.png

PHPインストール

バージョンは5.5にする。

以下rootで。

yum install -y php55を実行してインストール。

[root ~]# yum install -y php55
読み込んだプラグイン:priorities, update-motd, upgrade-helper
amzn-main/latest | 2.1 kB 00:00
amzn-updates/latest | 2.3 kB 00:00
依存性の解決をしています

依存性を解決しました

=========================================================================================================================================================================================================
 Package アーキテクチャー バージョン リポジトリー 容量
=========================================================================================================================================================================================================
インストール中:
 php55 x86_64 5.5.20-2.94.amzn1 amzn-updates 3.0 M
依存性関連でのインストールをします:
 json-c x86_64 0.11-6.8.amzn1 amzn-main 31 k
 libzip x86_64 0.10.1-1.3.amzn1 amzn-main 47 k
 php-pear noarch 1:1.9.5-2.17.amzn1 amzn-main 434 k
 php55-cli x86_64 5.5.20-2.94.amzn1 amzn-updates 4.2 M
 php55-common x86_64 5.5.20-2.94.amzn1 amzn-updates 1.3 M
 php55-pecl-jsonc x86_64 1.3.6-1.12.amzn1 amzn-updates 43 k
 php55-process x86_64 5.5.20-2.94.amzn1 amzn-updates 90 k
 php55-xml x86_64 5.5.20-2.94.amzn1 amzn-updates 329 k

トランザクションの要約
=========================================================================================================================================================================================================
インストール 1 パッケージ (+8 個の依存関係のパッケージ)

総ダウンロード容量: 9.4 M
インストール容量: 30 M
Downloading packages:
(1/9): json-c-0.11-6.8.amzn1.x86_64.rpm | 31 kB 00:00
(2/9): libzip-0.10.1-1.3.amzn1.x86_64.rpm | 47 kB 00:00
(3/9): php-pear-1.9.5-2.17.amzn1.noarch.rpm | 434 kB 00:00
(4/9): php55-5.5.20-2.94.amzn1.x86_64.rpm | 3.0 MB 00:00
(5/9): php55-cli-5.5.20-2.94.amzn1.x86_64.rpm | 4.2 MB 00:00
(6/9): php55-common-5.5.20-2.94.amzn1.x86_64.rpm | 1.3 MB 00:00
(7/9): php55-pecl-jsonc-1.3.6-1.12.amzn1.x86_64.rpm | 43 kB 00:00
(8/9): php55-process-5.5.20-2.94.amzn1.x86_64.rpm | 90 kB 00:00
(9/9): php55-xml-5.5.20-2.94.amzn1.x86_64.rpm | 329 kB 00:00
合計 22 MB/s | 9.4 MB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 インストール中 : libzip-0.10.1-1.3.amzn1.x86_64 1/9
 インストール中 : json-c-0.11-6.8.amzn1.x86_64 2/9
 インストール中 : php55-xml-5.5.20-2.94.amzn1.x86_64 3/9
 インストール中 : php55-cli-5.5.20-2.94.amzn1.x86_64 4/9
 インストール中 : php55-common-5.5.20-2.94.amzn1.x86_64 5/9
 インストール中 : php55-process-5.5.20-2.94.amzn1.x86_64 6/9
 インストール中 : 1:php-pear-1.9.5-2.17.amzn1.noarch 7/9
 インストール中 : php55-pecl-jsonc-1.3.6-1.12.amzn1.x86_64 8/9
 インストール中 : php55-5.5.20-2.94.amzn1.x86_64 9/9
 検証中 : php55-process-5.5.20-2.94.amzn1.x86_64 1/9
 検証中 : php55-xml-5.5.20-2.94.amzn1.x86_64 2/9
 検証中 : json-c-0.11-6.8.amzn1.x86_64 3/9
 検証中 : 1:php-pear-1.9.5-2.17.amzn1.noarch 4/9
 検証中 : php55-common-5.5.20-2.94.amzn1.x86_64 5/9
 検証中 : php55-pecl-jsonc-1.3.6-1.12.amzn1.x86_64 6/9
 検証中 : libzip-0.10.1-1.3.amzn1.x86_64 7/9
 検証中 : php55-5.5.20-2.94.amzn1.x86_64 8/9
 検証中 : php55-cli-5.5.20-2.94.amzn1.x86_64 9/9

インストール:
 php55.x86_64 0:5.5.20-2.94.amzn1

依存性関連をインストールしました:
 json-c.x86_64 0:0.11-6.8.amzn1 libzip.x86_64 0:0.10.1-1.3.amzn1 php-pear.noarch 1:1.9.5-2.17.amzn1 php55-cli.x86_64 0:5.5.20-2.94.amzn1 php55-common.x86_64 0:5.5.20-2.94.amzn1
 php55-pecl-jsonc.x86_64 0:1.3.6-1.12.amzn1 php55-process.x86_64 0:5.5.20-2.94.amzn1 php55-xml.x86_64 0:5.5.20-2.94.amzn1

完了しました!
[root ~]#

バージョン確認

[root ~]# php -v
PHP 5.5.20 (cli) (built: Dec 29 2014 18:02:29)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
[root ~]#

php動作確認

例のアレを作成。(info.php)

/var/www/study/info.php
<?php
phpinfo();

http://(Global IP)/info.php
にアクセスしてみる。

OK!

phpinfo.png

MySQLインストール

  • 今回は開発用EC2インスタンスにMySQLサーバを入れてしまう。
    • バージョンは5.6にする。
  • PHPMyAdminも入れる。
  • 追加のPerlモジュールも必要なので入れる。yum install -y perl-Data-Dumper

以下rootで。

yumリポジトリを追加。
yum install -y http://repo.mysql.com/mysql-community-release-el6-4.noarch.rpmを実行。

[root ~]# yum install -y http://repo.mysql.com/mysql-community-release-el6-4.noarch.rpm
読み込んだプラグイン:priorities, update-motd, upgrade-helper
mysql-community-release-el6-4.noarch.rpm | 5.0 kB 00:00
/var/tmp/yum-root-EJK5Fo/mysql-community-release-el6-4.noarch.rpm を調べています: mysql-community-release-el6-4.noarch
/var/tmp/yum-root-EJK5Fo/mysql-community-release-el6-4.noarch.rpm をインストール済みとして設定しています
依存性の解決をしています
amzn-main/latest | 2.1 kB 00:00
amzn-updates/latest | 2.3 kB 00:00

依存性を解決しました

=========================================================================================================================================================================================================
 Package アーキテクチャー バージョン リポジトリー 容量
=========================================================================================================================================================================================================
インストール中:
 mysql-community-release noarch el6-4 /mysql-community-release-el6-4.noarch 2.5 k

トランザクションの要約
=========================================================================================================================================================================================================
インストール 1 パッケージ

合計容量: 2.5 k
インストール容量: 2.5 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 インストール中 : mysql-community-release-el6-4.noarch 1/1
 検証中 : mysql-community-release-el6-4.noarch 1/1

インストール:
 mysql-community-release.noarch 0:el6-4

完了しました!
[root ~]#

yum install -y mysql-serverを実行してインストール。

[root ~]# yum install -y mysql-server
読み込んだプラグイン:priorities, update-motd, upgrade-helper
1 packages excluded due to repository priority protections
パッケージ mysql-server は mysql-community-server によって不要になりました。代わりに mysql-community-server-5.6.14-3.el6.x86_64 のインストールを試みています。
依存性の解決をしています

依存性を解決しました

=========================================================================================================================================================================================================
 Package アーキテクチャー バージョン リポジトリー 容量
=========================================================================================================================================================================================================
インストール中:
 mysql-community-server x86_64 5.6.14-3.el6 mysql-community 51 M
依存性関連でのインストールをします:
 mysql-community-client x86_64 5.6.14-3.el6 mysql-community 18 M
 mysql-community-common x86_64 5.6.14-3.el6 mysql-community 296 k
 mysql-community-libs x86_64 5.6.14-3.el6 mysql-community 1.8 M

トランザクションの要約
=========================================================================================================================================================================================================
インストール 1 パッケージ (+3 個の依存関係のパッケージ)

総ダウンロード容量: 71 M
インストール容量: 321 M
Downloading packages:
警告: /var/cache/yum/x86_64/latest/mysql-community/packages/mysql-community-client-5.6.14-3.el6.x86_64.rpm: V3 DSA/SHA1 Signature、鍵 ID 5072e1f5: NOKEY ] 4.1 MB/s | 12 MB 00:01 ETA
mysql-community-client-5.6.14-3.el6.x86_64.rpm の公開鍵がインストールされていません
(1/4): mysql-community-client-5.6.14-3.el6.x86_64.rpm | 18 MB 00:00
(2/4): mysql-community-common-5.6.14-3.el6.x86_64.rpm | 296 kB 00:00
(3/4): mysql-community-libs-5.6.14-3.el6.x86_64.rpm | 1.8 MB 00:00
(4/4): mysql-community-server-5.6.14-3.el6.x86_64.rpm | 51 MB 00:04
合計 14 MB/s | 71 MB 00:00:05
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql から鍵を取得中です。
Importing GPG key 0x5072E1F5:
 Userid : "MySQL Release Engineering <mysql-build@oss.oracle.com>"
 Fingerprint: a4a9 4068 76fc bd3c 4567 70c8 8c71 8d3b 5072 e1f5
 Package : mysql-community-release-el6-4.noarch (@/mysql-community-release-el6-4.noarch)
 From : /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 インストール中 : mysql-community-common-5.6.14-3.el6.x86_64 1/4
 インストール中 : mysql-community-libs-5.6.14-3.el6.x86_64 2/4
 インストール中 : mysql-community-client-5.6.14-3.el6.x86_64 3/4
 インストール中 : mysql-community-server-5.6.14-3.el6.x86_64 4/4
 検証中 : mysql-community-server-5.6.14-3.el6.x86_64 1/4
 検証中 : mysql-community-common-5.6.14-3.el6.x86_64 2/4
 検証中 : mysql-community-libs-5.6.14-3.el6.x86_64 3/4
 検証中 : mysql-community-client-5.6.14-3.el6.x86_64 4/4

インストール:
 mysql-community-server.x86_64 0:5.6.14-3.el6

依存性関連をインストールしました:
 mysql-community-client.x86_64 0:5.6.14-3.el6 mysql-community-common.x86_64 0:5.6.14-3.el6 mysql-community-libs.x86_64 0:5.6.14-3.el6

完了しました!
[root ~]#

追加perlモジュール。

[root ~]# yum install -y perl-Data-Dumper
読み込んだプラグイン:priorities, update-motd, upgrade-helper
1 packages excluded due to repository priority protections
依存性の解決をしています

依存性を解決しました

=========================================================================================================================================================================================================
 Package アーキテクチャー バージョン リポジトリー 容量
=========================================================================================================================================================================================================
インストール中:
 perl-Data-Dumper x86_64 2.145-3.5.amzn1 amzn-main 49 k

トランザクションの要約
=========================================================================================================================================================================================================
インストール 1 パッケージ

総ダウンロード容量: 49 k
インストール容量: 93 k
Downloading packages:
perl-Data-Dumper-2.145-3.5.amzn1.x86_64.rpm | 49 kB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 インストール中 : perl-Data-Dumper-2.145-3.5.amzn1.x86_64 1/1
 検証中 : perl-Data-Dumper-2.145-3.5.amzn1.x86_64 1/1

インストール:
 perl-Data-Dumper.x86_64 0:2.145-3.5.amzn1

完了しました!
[root ~]#

自動起動ON。

chkconfig mysqld on

rootパスワード変更。

mysql -urootでログインし、set password for root@localhost=password('new-password');を実行。

※AMIは、'study@suzukishouten01'にする。

[root ~]# mysql -uroot
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 5.6.14 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql> set password for root@localhost=password('new-password');
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye
[root ~]# ```

mysql_secure_installationを実行。設定内容は下記。

```bash
Change the root password? [Y/n] n # 既に先ほど変更したので n
Remove anonymous users? [Y/n] Y # 匿名ユーザを削除
Disallow root login remotely? [Y/n] Y # root ユーザでのリモートからのログインを禁止
Remove test database and access to it? [Y/n] Y # test データベースを削除
Reload privilege tables now? [Y/n] Y # 権限テーブルをリロード

再起動。

service mysqld restart

PHPMyAdminインストール

以下rootで。

yum --enablerepo=epel install -y phpMyAdminを実行してインストール。

[root ~]# yum --enablerepo=epel install -y phpMyAdmin
読み込んだプラグイン:priorities, update-motd, upgrade-helper
1018 packages excluded due to repository priority protections
依存性の解決をしています

依存性を解決しました

=========================================================================================================================================================================================================
 Package アーキテクチャー バージョン リポジトリー 容量
=========================================================================================================================================================================================================
インストール中:
 phpMyAdmin noarch 4.0.10.7-1.el6 epel 4.1 M
依存性関連でのインストールをします:
 libXpm x86_64 3.5.10-2.9.amzn1 amzn-main 54 k
 libmcrypt x86_64 2.5.8-9.1.2.amzn1 amzn-main 110 k
 libtidy x86_64 0.99.0-19.20070615.1.4.amzn1 amzn-main 144 k
 libtool-ltdl x86_64 2.4.2-20.4.8.2.23.amzn1 amzn-main 51 k
 libvpx x86_64 1.2.0-1.0.amzn1 amzn-main 222 k
 php-php-gettext noarch 1.0.11-3.el6 epel 21 k
 php-tcpdf noarch 6.1.1-1.el6 epel 2.8 M
 php-tcpdf-dejavu-sans-fonts noarch 6.1.1-1.el6 epel 304 k
 php55-bcmath x86_64 5.5.20-2.94.amzn1 amzn-updates 79 k
 php55-gd x86_64 5.5.20-2.94.amzn1 amzn-updates 296 k
 php55-mbstring x86_64 5.5.20-2.94.amzn1 amzn-updates 1.3 M
 php55-mcrypt x86_64 5.5.20-2.94.amzn1 amzn-updates 70 k
 php55-mysqlnd x86_64 5.5.20-2.94.amzn1 amzn-updates 380 k
 php55-pdo x86_64 5.5.20-2.94.amzn1 amzn-updates 188 k
 php55-tidy x86_64 5.5.20-2.94.amzn1 amzn-updates 77 k
 t1lib x86_64 5.1.2-6.5.amzn1 amzn-main 179 k

トランザクションの要約
=========================================================================================================================================================================================================
インストール 1 パッケージ (+16 個の依存関係のパッケージ)

総ダウンロード容量: 10 M
インストール容量: 38 M
Downloading packages:
(1/17): libXpm-3.5.10-2.9.amzn1.x86_64.rpm | 54 kB 00:00
(2/17): libmcrypt-2.5.8-9.1.2.amzn1.x86_64.rpm | 110 kB 00:00
(3/17): libtidy-0.99.0-19.20070615.1.4.amzn1.x86_64.rpm | 144 kB 00:00
(4/17): libtool-ltdl-2.4.2-20.4.8.2.23.amzn1.x86_64.rpm | 51 kB 00:00
(5/17): libvpx-1.2.0-1.0.amzn1.x86_64.rpm | 222 kB 00:00
warning: /var/cache/yum/x86_64/latest/epel/packages/php-php-gettext-1.0.11-3.el6.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
php-php-gettext-1.0.11-3.el6.noarch.rpm の公開鍵がインストールされていません
(6/17): php-php-gettext-1.0.11-3.el6.noarch.rpm | 21 kB 00:00
(7/17): php-tcpdf-6.1.1-1.el6.noarch.rpm | 2.8 MB 00:00
(8/17): php-tcpdf-dejavu-sans-fonts-6.1.1-1.el6.noarch.rpm | 304 kB 00:00
(9/17): php55-bcmath-5.5.20-2.94.amzn1.x86_64.rpm | 79 kB 00:00
(10/17): php55-gd-5.5.20-2.94.amzn1.x86_64.rpm | 296 kB 00:00
(11/17): php55-mbstring-5.5.20-2.94.amzn1.x86_64.rpm | 1.3 MB 00:00
(12/17): php55-mcrypt-5.5.20-2.94.amzn1.x86_64.rpm | 70 kB 00:00
(13/17): php55-mysqlnd-5.5.20-2.94.amzn1.x86_64.rpm | 380 kB 00:00
(14/17): php55-pdo-5.5.20-2.94.amzn1.x86_64.rpm | 188 kB 00:00
(15/17): php55-tidy-5.5.20-2.94.amzn1.x86_64.rpm | 77 kB 00:00
(16/17): phpMyAdmin-4.0.10.7-1.el6.noarch.rpm | 4.1 MB 00:00
(17/17): t1lib-5.1.2-6.5.amzn1.x86_64.rpm | 179 kB 00:00
合計 10 MB/s | 10 MB 00:00:01
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 から鍵を取得中です。
Importing GPG key 0x0608B895:
 Userid : "EPEL (6) <epel@fedoraproject.org>"
 Fingerprint: 8c3b e96a f230 9184 da5c 0dae 3b49 df2a 0608 b895
 Package : epel-release-6-8.9.amzn1.noarch (installed)
 From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 インストール中 : php55-mbstring-5.5.20-2.94.amzn1.x86_64 1/17
 インストール中 : php-php-gettext-1.0.11-3.el6.noarch 2/17
 インストール中 : libXpm-3.5.10-2.9.amzn1.x86_64 3/17
 インストール中 : libvpx-1.2.0-1.0.amzn1.x86_64 4/17
 インストール中 : libtool-ltdl-2.4.2-20.4.8.2.23.amzn1.x86_64 5/17
 インストール中 : libmcrypt-2.5.8-9.1.2.amzn1.x86_64 6/17
 インストール中 : php55-mcrypt-5.5.20-2.94.amzn1.x86_64 7/17
 インストール中 : php55-bcmath-5.5.20-2.94.amzn1.x86_64 8/17
 インストール中 : libtidy-0.99.0-19.20070615.1.4.amzn1.x86_64 9/17
 インストール中 : php55-tidy-5.5.20-2.94.amzn1.x86_64 10/17
 インストール中 : php55-pdo-5.5.20-2.94.amzn1.x86_64 11/17
 インストール中 : php55-mysqlnd-5.5.20-2.94.amzn1.x86_64 12/17
 インストール中 : t1lib-5.1.2-6.5.amzn1.x86_64 13/17
 インストール中 : php55-gd-5.5.20-2.94.amzn1.x86_64 14/17
 インストール中 : php-tcpdf-6.1.1-1.el6.noarch 15/17
 インストール中 : php-tcpdf-dejavu-sans-fonts-6.1.1-1.el6.noarch 16/17
 インストール中 : phpMyAdmin-4.0.10.7-1.el6.noarch 17/17
 検証中 : t1lib-5.1.2-6.5.amzn1.x86_64 1/17
 検証中 : php55-pdo-5.5.20-2.94.amzn1.x86_64 2/17
 検証中 : libtidy-0.99.0-19.20070615.1.4.amzn1.x86_64 3/17
 検証中 : php55-tidy-5.5.20-2.94.amzn1.x86_64 4/17
 検証中 : php55-bcmath-5.5.20-2.94.amzn1.x86_64 5/17
 検証中 : php55-mbstring-5.5.20-2.94.amzn1.x86_64 6/17
 検証中 : php55-mcrypt-5.5.20-2.94.amzn1.x86_64 7/17
 検証中 : libmcrypt-2.5.8-9.1.2.amzn1.x86_64 8/17
 検証中 : php-tcpdf-dejavu-sans-fonts-6.1.1-1.el6.noarch 9/17
 検証中 : php-tcpdf-6.1.1-1.el6.noarch 10/17
 検証中 : libtool-ltdl-2.4.2-20.4.8.2.23.amzn1.x86_64 11/17
 検証中 : php-php-gettext-1.0.11-3.el6.noarch 12/17
 検証中 : php55-mysqlnd-5.5.20-2.94.amzn1.x86_64 13/17
 検証中 : phpMyAdmin-4.0.10.7-1.el6.noarch 14/17
 検証中 : libvpx-1.2.0-1.0.amzn1.x86_64 15/17
 検証中 : libXpm-3.5.10-2.9.amzn1.x86_64 16/17
 検証中 : php55-gd-5.5.20-2.94.amzn1.x86_64 17/17

インストール:
 phpMyAdmin.noarch 0:4.0.10.7-1.el6

依存性関連をインストールしました:
 libXpm.x86_64 0:3.5.10-2.9.amzn1 libmcrypt.x86_64 0:2.5.8-9.1.2.amzn1 libtidy.x86_64 0:0.99.0-19.20070615.1.4.amzn1 libtool-ltdl.x86_64 0:2.4.2-20.4.8.2.23.amzn1
 libvpx.x86_64 0:1.2.0-1.0.amzn1 php-php-gettext.noarch 0:1.0.11-3.el6 php-tcpdf.noarch 0:6.1.1-1.el6 php-tcpdf-dejavu-sans-fonts.noarch 0:6.1.1-1.el6
 php55-bcmath.x86_64 0:5.5.20-2.94.amzn1 php55-gd.x86_64 0:5.5.20-2.94.amzn1 php55-mbstring.x86_64 0:5.5.20-2.94.amzn1 php55-mcrypt.x86_64 0:5.5.20-2.94.amzn1
 php55-mysqlnd.x86_64 0:5.5.20-2.94.amzn1 php55-pdo.x86_64 0:5.5.20-2.94.amzn1 php55-tidy.x86_64 0:5.5.20-2.94.amzn1 t1lib.x86_64 0:5.1.2-6.5.amzn1

完了しました!
[root ~]#

/etc/httpd/conf.d/phpMyAdmin.confを修正。

/etc/httpd/conf.d/phpMyAdmin.conf
<Directory /usr/share/phpMyAdmin/>
 AddDefaultCharset UTF-8

 <IfModule mod_authz_core.c>
 # Apache 2.4
 <RequireAny>
 #Require ip 127.0.0.1 ←修正前
 Require all granted # ←修正後
 Require ip ::1
 </RequireAny>
 </IfModule>
</Directory>


apache再起動後、動作確認。

http://(Global IP)/phpMyAdmin/index.phpにアクセス。

phpMyAdmin_login.png

rootユーザでログイン(root/study@suzukishouten01)
phpMyAdmin_menu.png
OK!

データベース作成

DBユーザ追加と同時に作成、作成したデータベースにフル権限を与える

※user:study/pwd:study
phpMyAdmin_add_user.png

todo_listsテーブルを作成

phpMyAdmin_add_table.png
phpMyAdmin_add_table_param.png

データ1件追加

phpMyAdmin_add_record.png

Gitインストール

以下rootで。

yum install -y gitを実行してインストール。

[root ~]# yum install -y git
読み込んだプラグイン:priorities, update-motd, upgrade-helper
amzn-main/latest | 2.1 kB 00:00
amzn-updates/latest | 2.3 kB 00:00
1 packages excluded due to repository priority protections
依存性の解決をしています

依存性を解決しました

========================================================================================================================
 Package アーキテクチャー バージョン リポジトリー 容量
========================================================================================================================
インストール中:
 git x86_64 2.1.0-1.35.amzn1 amzn-main 9.2 M
依存性関連でのインストールをします:
 perl-Error noarch 1:0.17020-2.9.amzn1 amzn-main 33 k
 perl-Git noarch 2.1.0-1.35.amzn1 amzn-main 57 k
 perl-TermReadKey x86_64 2.30-20.9.amzn1 amzn-main 33 k

トランザクションの要約
========================================================================================================================
インストール 1 パッケージ (+3 個の依存関係のパッケージ)

総ダウンロード容量: 9.3 M
インストール容量: 23 M
Downloading packages:
(1/4): git-2.1.0-1.35.amzn1.x86_64.rpm | 9.2 MB 00:01
(2/4): perl-Error-0.17020-2.9.amzn1.noarch.rpm | 33 kB 00:00
(3/4): perl-Git-2.1.0-1.35.amzn1.noarch.rpm | 57 kB 00:00
(4/4): perl-TermReadKey-2.30-20.9.amzn1.x86_64.rpm | 33 kB 00:00
合計 7.2 MB/s | 9.3 MB 00:00:01
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 インストール中 : 1:perl-Error-0.17020-2.9.amzn1.noarch 1/4
 インストール中 : perl-TermReadKey-2.30-20.9.amzn1.x86_64 2/4
 インストール中 : perl-Git-2.1.0-1.35.amzn1.noarch 3/4
 インストール中 : git-2.1.0-1.35.amzn1.x86_64 4/4
 検証中 : 1:perl-Error-0.17020-2.9.amzn1.noarch 1/4
 検証中 : perl-Git-2.1.0-1.35.amzn1.noarch 2/4
 検証中 : perl-TermReadKey-2.30-20.9.amzn1.x86_64 3/4
 検証中 : git-2.1.0-1.35.amzn1.x86_64 4/4

インストール:
 git.x86_64 0:2.1.0-1.35.amzn1

依存性関連をインストールしました:
 perl-Error.noarch 1:0.17020-2.9.amzn1 perl-Git.noarch 0:2.1.0-1.35.amzn1 perl-TermReadKey.x86_64 0:2.30-20.9.amzn1

完了しました!
[root ~]#

バージョン確認

[root ~]# git --version
git version 2.1.0
[root ~]#

その他環境設定

httpd.conf修正

実行ユーザ変更

/etc/httpd/conf/httpd.conf
User study
Group apache

勉強会アプリ用にドキュメントルートの設定を変更する。

/etc/httpd/conf/httpd.confの下記該当箇所を修正する。

/etc/httpd/conf/httpd.conf
#DocumentRoot "/var/www/html"
DocumentRoot "/var/www/study"
 .
 .
 .
#<Directory "/var/www/html">
<Directory "/var/www/study">

php.ini編集

timezone

/etc/php.ini
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone #←修正前
date.timezone = 'Asia/Tokyo' #←修正後

LANG設定

/etc/sysconfig/i18nを編集

/etc/sysconfig/i18n
LANG=ja_JP.UTF-8

TimeZone設定

/etc/localtimeを、/usr/share/zoneinfo/Asia/Tokyoで上書き
cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

ユーザ追加

参考EC2にSSH接続用のユーザーを作成する - Qiita
useradd -g wheel study
passwd study

sudoersに追加
sudo visudo

root ALL=(ALL) ALL <-もともとある
study ALL=(ALL) ALL <-追加

ssh用の鍵を作成
su study
cd ~/
mkdir .ssh
cd .ssh
ssh-keygen -t rsa

[study .ssh]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/study/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/study/.ssh/id_rsa.
Your public key has been saved in /home/study/.ssh/id_rsa.pub.
The key fingerprint is:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The key's randomart image is:
+--[ RSA 2048]----+
| .o.. |

〜略〜

| . |
+-----------------+
[study .ssh]$

※AWS-AMILinuxに併せて名前を変更しておく

mv id_rsa.pub authorized_keys

XDEBUG

XDEBUGは必ずしも必要ないが、リモートデバッグできて便利なので入れる。

インストールは下記で。

yum install php55-pecl-xdebug --enablerepo=epel

php.iniを編集する。末尾に下記を追加。
※全部コメントアウトとし、デフォルトでは無効状態にしておいた。

/etc/php.ini
;[XDebug]
;zend_extension = /usr/lib64/php/5.5/modules/xdebug.so
;xdebug.remote_enable = 1
;xdebug.remote_mode = req
;xdebug.remote_port = 9000
;xdebug.idekey = "suzukishouten_study"
;xdebug.remote_connect_back=1
;xdebug.remote_autostart=1```

Emacs

いちおう、emacs派のために。

yum install emacs

イメージ作成

上記までで作成したEC2インスタンスを元に作成する。
create_image1.png
create_image2.png
create_image_finish.png

公開する

Modify Image Permissions
modify_image1.png

publicに設定
modify_image2.png

初期ソース作成

下記からcakephpをダウンロード。
作業時(2015/1/20)のバージョンは、2.5.8

/var/www/studyでwgetする。

wget https://github.com/cakephp/cakephp/archive/2.5.8.zip

.htaccessのrewrite設定をいじる必要がある。

3つある。

  • /.htaccess
  • /app/.htaccess
  • /app/webroot/.htaccess

それぞれ下記に。

/.htaccess
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteRule ^$ app/webroot/ [L]
 RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
/app/.htaccess
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteRule ^$ webroot/ [L]
 RewriteRule (.*) webroot/$1 [L]
</IfModule>
/app/webroot/.htaccess
<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

データベース設定

ファイル名変更

/app/Config/database.php.default -> /app/Config/database.php

/app/Config/database.php`

    public $default = array(
    'datasource' => 'Database/Mysql',
    'persistent' => false,
    'host' => 'localhost',
    'login' => 'study',
    'password' => 'study',
    'database' => 'study',
    'prefix' => '',
    'encoding' => 'utf8',
    );

security.salt .cipherSeed

/lib/Cake/Utility/Debugger.phpを修正する。

下記参考サイトの通り。
[CakePHP] Security.salt と Security.cipherSeed を生成する | blog.shiten.info

.gitignore

下記サイトのものをそのままコピペした。
[CakePHP] .gitignoreの設定 | CreativeStyle

GitHubに上げる

  1. rest-studyリポジトリ作成
  2. /var/www/study/rest-studyとしてclone
  3. 上記ソースを/var/www/study/rest-studyに全部コピー。
  4. git add, commit, push

以上!

7
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
8