AWS 上にwebサーバを立て、アプリケーション実行が必要だったのですが
いろいろと環境構築ではまりました。
他の人がはまらないとうれしいと思い、筆をとりました。
ご参考になれば幸いです。
本記事を読んでわかること
AWS のEC2環境で、下記パッケージのインストールができるようになる
はまりポイントを交えて説明します。
EC2のサーバ設定の確認
下記情報をサーバ設定画面から押さえておく。
情報の掲載場所は、図に示す通りである。
パブリック IPv4 DNS
セキュリティグループルール
EC2サーバ設定
yum で下記のコマンドをタイプし、インストールする。
sudo yum check-update
#Apacheをインストール
sudo yum install httpd
sudo service httpd start
# EC2が再起動した際にApacheも自動起動するように設定
sudo systemctl enable httpd
# Apacheが起動したか確認
sudo systemctl status httpd
上記コマンドを打った後、ブラウザのURLに下記を打ち込み
Apache の確認画面が出たら成功
http://パブリックIpV4DNS
Apache の確認画面
AWS 独自のリポジトリ からインストールする。
yum でも可能だが、versionが7と古くなるので注意
#Tomcatインストール
sudo amazon-linux-extras install tomcat8.5
#Tomcatを起動
sudo systemctl enable tomcat
sudo systemctl start tomcat
#Tomcatのトップページを閲覧するために必要
sudo yum install tomcat-webapps admin-webapps
上記コマンドを打った後に下記をURLに打つと、tomcat 確認ページが閲覧できれば成功
http://パブリックIpV4DNS:8080
tomcat 確認ページ
「参考にしたページ」
ありがたかったです。
http:// https://note.com/hironobuu/n/n1cb0eef6258d
1 依存関係ファイルの導入 ?AWS だと導入済み?
AWS だと事前に導入されている可能性があったが、念のため実行
sudo yum install php70-mbstring.x86_64 php70-zip.x86_64 -y
2 php の最新バージョン(7.2)をインストール
まずパッケージを確認する。
#AWSで導入できるパッケージを確認
amazon-linux-extras
amazon-linux-extras info php7.2
パッケージ確認
パッケージをインストールする
#パッケージをインストール
sudo amazon-linux-extras install php7.2
追加のパッケージインストールが下記図のように示されたのですべてyum でインストール
追加パッケージの確認
sudo yum install php-cli
sudo yum install php-pdo
sudo yum install php-fpm
sudo yum install php-json
sudo yum install php-mysqlnd
#フォルダに移動
cd /var/www/html
sudo wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
#phpMyAdminフォルダを作って展開
sudo mkdir phpMyAdmin
sudo tar -xvzf phpMyAdmin-latest-all-languages.tar.gz -C phpMyAdmin --strip-components 1
ブラウザ上でphpMyAdmin が動作しているか確認する。
http://パブリックIpV4DNS/phpMyAdmin/
phpMyAdmin のログイン画面
4 php に依存関係のあるファイルをインストールする
sudo yum install php-mbstring -y
ログインユーザは後述するMySql で設定したユーザであるため、このまま、MySQL 導入に進む。
※設定を反映する時は、Apatch を再起動すること
systemctl restart httpd
下記ページが参考となりました。ありがたいです。
【AWS】EC2でphpMyAdminを利用し、RDSへアクセス - Qiita
phpMyAdminの設定(CentOS 7) | さくらインターネットのVPS設定マニュアル
1.下記コマンドを実行してインスタンス 作成初期からインストールされている MariaDB 用パッケージを削除する
sudo yum remove mariadb-*
リポジトリ 指定は、下記をURLをみて、指定する
MySQL :: Download MySQL Yum Repository
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
3.mysql パッケージのインストール
# GPS鍵の登録 これをしないとインストール中に怒られる
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
sudo yum install --enablerepo=mysql80-community mysql-community-server
sudo yum install --enablerepo=mysql80-community mysql-community-devel
4.mysql に関係のあるファイルを抽出
sudo yum list installed | grep mysql
関係あるファイル一覧
5.サービス起動
#logファイルを作成
sudo touch /var/log/mysqld.log
#サービス起動
sudo systemctl start mysqld
#サービスをサーバ起動時に実行する設定
sudo systemctl enable mysqld
6.初期ユーザとパスワードの調査
ログから初期ユーザとパスワードを確認するため、ログファイルを見る。
sudo less /var/log/mysqld.log
と打つと、下記のようなログが出てくるので、これが初期パスワード
2022-08-25T04:44:16.126478Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: w:BeRd*0pej!
#ユーザ名:root
#パスワード:w:BeRd*0pej!
念のため、サーバを停止し、再起動する。
sudo service mysqld stop
sudo service mysqld start
7.初期ユーザとパスワード、認証時の暗号方式の変更
mysql へ接続し、下記コマンドを打つ。
mysql -u root -p
>password 先ほどログファイルに出力されていた初期パスワードを入力する。
#パスワードの変更
#AAAAAAAではだめで、大文字アルファベット、数字、記号などの組み合わせが求められるが便宜上AAAとする。
ALTER USER 'root'@'localhost' identified BY 'AAAAAAAAAAA';
#ユーザ認証方式の変更 phpMyAdminにログインできるようにするため
sudo mysql -u root -p
#認証用ユーザ管理のデータベースに移動
mysql > use mysql
mysql> select user, host, plugin from user;
mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'AAAAAAAAAAA';
下記のような結果になればよい。
SQL ユーザパスワードの認証方式の変更
下記がとても参考になりました。ありがたいです。
AWS EC2 AmazonLinux2 MySQLをインストールする - Qiita
[CentOS] MySQLをアップデート時にGPG鍵エラーが出た時の対処法 – 株式会社シーポイントラボ | 浜松のシステム・RTK-GNSS開発
AWS EC2 AmazonLinux2 MySQL rootユーザの初期パスワードの確認方法 - Qiita
【MySQL】PHPで接続できないとき SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client | 困った時に思い出したい