項目
- 仮想マシンにリモートアクセスをする
- HTTPサーバーのApacheをインストールし、ページを公開
- ローカルと仮想マシン双方で、ファイルを転送し合う
1.仮想マシンへリモートアクセスする
ターミナル
# ".ssh"と言うフォルダがあるかを確認する
$ ls -a -l
# 無ければ`mkdir .ssh`で作成
# 前回のダウンロードしたキーを".ssh"の中に移動
$ mv ~/Desktop/FirstKey.pem ~/.ssh
# 仮想マシンとの関連付けみたいな事をしてる、多分
$ chmod 400 ~/.ssh/FirstKey.pem
# 仮想マシンへリモートアクセスしている、()は要らないの忘れずに
# 最初だけ何か聞かれるので、yesと答える
$ ssh -i ~/.ssh/FirstKey.pem ec2-user@(前回設定したパブリックIPアドレス)
# 仮想マシン内は"$$ ~~"で表現、これで仮想マシンのアクセスからログアウト
$$ exit
- 取り敢えず上からやっていけば大丈夫なはず
2.HTTPサーバーのApacheをインストールし、ページを公開
ターミナル
# 取り敢えずログイン
$ ssh -i ~/.ssh/FirstKey.pem ec2-user@(パブリックIP)
# まず仮想マシンを最新版に
$$ sudo yum -y update
# sudoコマンドでApacheをインストール
$$ sudo yum -y install httpd
# Apacheを作動
$$ sudo service httpd start
# 動くようにする
$$ sudo chkconfig httpd on
# /var/www/htmlの中身を確認、Apacheはここにhtmlコンテンツがあると動く
$$ ls /var/www/html
# sudoコマンドでviを起動し、前述の中に作られた"index.html"に何か書くよと言う事
$$ sudo vi /var/www/html/index.html
index.html
<!-- まずは"i"か"A"を選択して記述モードを起動 -->
<h1> Hello World </h1>
<!-- "esc"を押した後、":wq"を入力してEnter、これは保存して終了ってこと --!>
- この後に
http://(パブリックIP)
にアクセスし、Hello World出来てれば完了
3.ローカル環境と仮想環境の双方でファイルを転送し合う
ターミナル
# scpコマンドでファイルを転送する、先に転送側と何を転送するか、後ろに何処へを記載
$ scp -i ~/.ssh/FirstKey.pem ec2-user@(パブリックIP):/var/www/html/index.html ~/Desktop
# これでデスクトップに"index.html"が来ているはず
# 前述の様に先に転送側や何を、後ろに何処へ
$ scp -i ~/.ssh/FirstKey.pem ~/Desktop/index.html ec2-user@(パブリックIP):
#仮想マシンに接続
$ ssh -i ~/.ssh/FirstKey.pem ec2-user@(パブリックIP)
# lsで受信確認後、"/var/www/html"に移しておく
$$ ls
$$ sudo mv ~/index.html /var/www/html
#この後一応パブリックIPにアクセスしてブラウザで動くか確認してみる
# 一々mvするのも面倒くさいので、勝手に行くようにする(ここからはほぼ呪文)
$$ sudo groupadd www
$$ sudo usermod -a -G www ec2-user
# 実行後"ec2 user wheel www"と表示されればOK
$$ groups
$$ sudo chown -R root:www /var/www
$$ sudo chmod 2775 /var/www
$$ find /var/www -type d -exec sudo chmod 2775 {} \;
$$ find /var/www -type f -exec sudo chmod 0664 {} \;
$$ exit
# ここまでで終了
# scpコマンドを使うタイミングで、どのディレクトリへ移動するか迄指定している。差異は前述のリモートへ転送と比較すべし
$ scp -i ~/.ssh/FirstKey.pem ~/Desktop/index.html ec2-user@(パブリックIP):/var/www/html
4.終わりに
- 何となく筋道というか光が見えて来たのでは?
- ApacheをFlaskで使うのはどうやるんだろう
追記
- 急を要す場合は取り敢えず
/var/www/html
内にディレクトリ作ってPythonやらFlaskやらを入れれば良いってところだけ - phpMyAdminも調べれば出てくるから同じ所で良い感じにぽい