• Skip to main content
  • Skip to primary sidebar

プログラミング入門ナビ by Proglus(プログラス)

プログラミング学習初心者のための情報メディア

You are here: Home / Archives for AWS

AWS

【AWS Cloud9】Ruby on Railsのサンプルコードをチェックアウトして実行する方法

2022-09-14 By プログラミング入門ナビ編集部

サンプルコードをチェックアウトして実行する方法

この記事では、AWS Cloud9上でサンプルコードをGitHubからチェックアウトして、実行する方法についてご説明します。

この記事は、Udemyオンライン講座「はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう」のサポート記事です。

なお、アクセス時期によっては実際のサイトと記事中の画像で表示が異なる場合があります。

サンプルコードをご自身のcloud9環境で実行する方法

rubyとrailsのバージョンが指定のバージョンであることを確認

cloud9のターミナル上にて、ruubyとrailsのバージョンを確認して下さい。
●rubyのバージョン確認

●railsのバージョン確認

※7.0.なんとかであれば、通常は問題ありません。
指定のバージョンでは無い場合は、過去のレクチャーでバージョンの設定に関して説明していますので、ご確認下さい。

動かしたいサンプルコードページのURLを取得

サンプルコードのアクセス方法は、レクチャー横の「リソース」からアクセス出来ます。

githubページの「code」をクリック。

タブが「HTTPS」になっていることを確認して、URLをコピーします。

git cloneを実行

cloud9のターミナル上に、サンプルコードを複製します。
rails_project ディレクトリ配下に、サンプルコードを配置したいので、rails_project ディレクトリでコマンドを入力します。

$ git clone [クローンしたいサンプルコードのURL]

サンプルコードがrails_project ディレクトリ配下にクローンされました。

プロジェクトディレクトリへ移動

cd コマンドを使い、チェックアウトしたプロジェクトのディレクトリに移動します。

例) rails7-qanda-sample-codeディレクトリへ移動する場合(実情に合わせて操作してください)

$ cd rails7-qanda-sample-code

rails サーバー起動

bundle insatall コマンドを実行します。
cloud9のターミナル上でコマンドを実行して下さい。

$ bundle install --without production

続いてデータベースを設定します。
cloud9のターミナル上でコマンドを実行して下さい。
●データベース作成

$ rails db:create

●マイグレーションファイルを実行

$ rails db:migrate

cloud9のターミナル上でコマンドを実行して下さい。

$ rails s

サンプルコードをcloud9上で実行することが出来ました。
以上ご不明な点がございましたらUdemyのQ&Aコーナーへご連絡ください、何卒よろしくお願いします。

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: AWS Tagged With: AWS, Cloud9, Git, Ruby on Rails

【AWS】ApacheをEC2にインストール後、テストページが表示出来なかった時の対応方法について

2022-04-26 By プログラミング入門ナビ編集部

このサイトにアクセスできません

本記事は、Udemy 「最速で学ぶ – AWS認定ソリューションアーキテクトアソシエイト 入門完全攻略コース」 、Proglus(プログラス)「AWS 認定 ソリューションアーキテクト – アソシエイト入門」受講のサポート記事です。

概要

レクチャー「演習:ApacheをEC2にインストール」について、テストページが表示出来なかった時の対応方法についての補足です。
テストページが表示出来なかった時

以下の点について確認して下さい。

確認① セキュリティグループの設定の確認

 セキュリティグループにポート80への許可設定をインバウンドルールに追加出来ている確認して下さい。
確認① セキュリティグループの設定の確認

確認② IPアドレスの確認

 ブラウザURLはMy EC2 Instance インスタンスの IPv4パブリックIPであるか確認して下さい。
確認② IPアドレスの確認

確認② IPアドレスの確認 - 2

確認③ httpでアクセス出来ているか確認

 ブラウザのURLバーで右クリック「URL全体を常に表示」をクリックし、「http://<IPアドレス>」になっているか確認して下さい。アクセスが許可されているものは、「http」なので、「https」でのアクセスは出来ません。

確認③ httpでアクセス出来ているか確認

確認④Apacheのログを確認

 AWS側の問題かApacheの設定の問題かを切り分けるために、Apacheのログを確認して下さい。ログが出力されない場合はアクセスが出来ていない状態です。

1.Elastic IPの登録

手順レクチャー「Elastic IP」

確認④Apacheのログを確認

2.SSH接続

EC2 Instance connectを利用してサーバーにSSH接続します。

参照:レクチャー「SSH接続」

 3.Apacheのログを確認

$ sudo tail -f /var/log/httpd/access_log  

期待値としては、ウェブページをリロードするたびに、ログが追加されます。

3.Apacheのログを確認
参考: レクチャー「ELBの動作確認」

おわりに

ApacheをAmazon EC2にインストール後、テストページが表示出来なかった時の対応方法について解説しました。
ご不明点は、Udemy、Proglus(プログラス)内に設置したQ&Aコーナーにてお知らせください。

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: AWS Tagged With: Apache, AWS, EC2

AWS Cloud9のMySQLサーバにローカルPCから接続する方法について解説します!

2021-09-28 By プログラミング入門ナビ編集部

フレームワークのイメージ

この記事では、AWS Cloud9のEC2インスタンスに立てたMySQLサーバーに、ローカル環境のMySQLクライアント(MySQL Workbench) から接続する方法についてご説明します。

この記事は、Udemyオンライン講座「はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう」とProglus「Ruby on Rails5入門」のサポート記事です。

なお、アクセス時期によっては実際のサイトと記事中の画像で表示が異なる場合があります。

AWS Cloud9とは

・クラウドコンピューティングサービスのAWSで利用できるサービスの一つです。
・クラウド上のサーバー資源を利用して、ブラウザ上の統合開発環境(IDE)でWebアプリケーションを開発することができます。
・Cloud9を起動すると、AWSのEC2インスタンスに接続され、開発を進めることができます。

AWS Cloud9上のMySQLサーバーに接続する

Webサービスの開発を進める上で、MySQLサーバーに接続してSQLコマンドを実行し、DB操作を行う場面は多々あります。

そしてクラウド上で動くリモートのMySQLサーバーに接続するためには、SSH接続などで認証する必要があります。

Cloud9で開発を行う場合、EC2インスタンスが自動的にブラウザ上のIDEと接続されます。そのため認証情報がユーザーに見えない形となっているので、Cloud9のEC2環境で起動しているMySQLサーバーに接続するためには少し工夫が必要です。

ここでは、Cloud9のMySQLサーバーにローカル環境から接続するまでの流れについて解説します。

解説で用いる主なバージョンについては以下の通りです。

ローカル環境:
PC: MacBook Pro 13-inch(2020, intelプロセッサ)
MySQL Workbench: 8.0.25

Cloud9環境:
インスタンスタイプ: t2.micro (1 GiB RAM + 1 vCPU)
プラットフォーム: Ubuntu Server 18.04 LTS
MySQL: 8.0.25

キーペアの作成

SSH接続でリモートサーバーとの認証に用いるため、まずは公開鍵・秘密鍵のキーペアを作成します。

まずawsのEC2コンソールを開き、「キーペア」を選択します。

「キーペアを作成」を押し、新規作成を行います。

キーペア名を入力し、ファイル形式としてpemを選択します。「キーペアを作成」を押します。

するとcer形式のファイルとして秘密鍵がダウンロードできるので、分かりやすい場所に保存しておきます。

この秘密鍵は再発行ができないので、もしファイルを削除してしまった場合は、もう一度新しいキーペアの作成を行なってください。

公開鍵の登録

先ほどダウンロードした秘密鍵から、公開鍵を生成します。

公開鍵の生成にはssh-keygenコマンドを使用します。

$ ssh-keygen -y -f {秘密鍵ファイルまでのパス}
ssh-rsa .....

出力のssh-rsaで始まる文字列が公開鍵となります。

以下のようなエラーが発生する場合は、秘密鍵のファイルの権限を変更する必要があります。

$ ssh-keygen -y -f demo.cer
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/ricky/Downloads/demo.cer' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/Users/ricky/Downloads/demo.cer": bad permissions

chmodコマンドを管理者権限で実行し、0600を指定します。

sudo chmod 0600 {秘密鍵ファイルまでのパス}

公開鍵が出力できたら、Cloud9の開発環境を起動してください。

ターミナルで以下のように入力し~/.ssh/authorized_keysファイルを開きます。

$ vim ~/.ssh/authorized_keys

出力された公開鍵を、以下のようにファイル下部に新しく貼り付けます。

ここで既に存在する鍵は絶対に削除しないでください。Cloud9のコンソールからブラウザ開発環境に接続できなくなります。

セキュリティグループの変更

次に、ローカルPCからCloud9のEC2インスタンスにSSHできるように、セキュリティグループの設定を変更します。

Cloud9のコンソールで環境名をクリックし、詳細画面に飛びます。

 

「Go To Instance」をクリックすると、Cloud9の環境があるEC2インスタンスの詳細画面に飛びます。

「セキュリティ」から「セキュリティグループ」のリンクをクリックし、セキュリティグループの詳細に飛びます。

「インバウンドルールの編集」をクリックします。

ローカルのPCからの接続を許可するため、ソースに「0.0.0.0」と「::/0」を追加しましょう。完了したら、「ルールを保存」をクリックします。

これでネットワーク周りの設定は完了です。ローカルPCからSSHができることを確認しましょう。

もう一度EC2インスタンスの詳細を開き、インスタンスのグローバルIPを確認します。

そして以下のコマンドで接続します。

$ ssh -i {秘密鍵ファイルまでのパス} ubuntu@{EC2インスタンスのグローバルIP}

上手くいけば、EC2環境にSSHで入ることができるはずです。

Workbenchから接続

次はWorkbenchで接続情報を入力し、Cloud9のEC2環境で起動しているMySQLサーバーに接続してみましょう。

MySQLは既にセットアップ済みで、起動状態であるとします。

Workbenchを起動します。

「MySQL Connections」の右の「+」アイコンをクリックします。

すると接続の設定画面が表示されます。

まず、Connection Nameで適当なコネクション名を設定します。そしてConnection Methodの部分で「Standard TCP/IP over SSH」を選択します。

次はSSH認証に関する設定を行います。SSH HostnameにはEC2インスタンスのパブリックIPを入力し、SSH UsernameにはEC2インスタンスのユーザー名を入力してください。

SSH Key Fileでは、先ほどssh-keygenで作成した秘密鍵のファイルまでのパスを指定します。

デフォルトの場合は図の通りですが、MySQLの設定に変更がある場合は、ホスト名やポート番号、ユーザー名も適宜変更を行ってください。

これで準備が整いました、Test Connectionを押してCloud9上のMySQLサーバーとの接続確認を行います。

以下のように表示されたら成功です。

「OK」ボタンを押せば、WorkbenchからMySQLサーバーに接続することができます。

これで、Cloud9のMySQLサーバーにローカル環境から接続することが出来ました!

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: AWS Tagged With: Cloud9, MySQL

Cloud9が容量不足? EBSボリュームを拡張する方法を解説します!

2021-04-02 By プログラミング入門ナビ編集部

パソコンの前でこちらへ微笑む女性

この記事では、AWS Cloud9のEC2インスタンスが容量不足になってしまった時の対処法について説明します。

この記事は、オンライン講座「はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう」のサポート記事です。

動画で学習する

チャンネル登録してね!

なお、アクセス時期によっては実際のサイトと記事中の画像で表示が異なる場合があります。

AWS Cloud9とは

・クラウドコンピューティングサービスのAWSで利用できるサービスの一つです。
・クラウド上のサーバー資源を利用して、ブラウザ上の統合開発環境(IDE)でWebアプリケーションを開発することができます。
・Cloud9を起動すると、AWSのEC2インスタンスに接続され、開発を進めることができます。

Cloud9が容量不足になった場合

EC2インスタンスを利用していて容量が不足した場合、ターミナルで以下のようなメッセージが表示されます。


No space left on device

このような場合、まずは不要なファイルが容量を圧迫していないか確認してみましょう。

dfコマンドを用いると、ボリューム全体の使用状況を確かめることができます。

Cloud9上のターミナルで以下のコマンドを実行します。


$ df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 483M 60K 483M 1% /dev
tmpfs 493M 0 493M 0% /dev/shm
/dev/xvda1 9.8G 8.6G 1.1G 89% /

この例では、ルートディレクトリにマウントされている/dev/xvda1 というファイルシステムが89%使用済みである、ということが分かります。

全体の使用状況を把握したら、duコマンドを用いて個別のディレクトリの容量を確かめます。以下が使用例です。


$ du -h ~/node_modules
20K node_modules/tmp/lib
44K node_modules/tmp
12K node_modules/node-cleanup/tests/lib
20K node_modules/node-cleanup/tests/bin
64K node_modules/node-cleanup/tests
100K node_modules/node-cleanup
20K node_modules/os-tmpdir
168K node_modules

もし容量が極端に大きいファイルなどが見つかったら、影響が無いことを確認した上で削除して、ボリューム容量を解放してみてください。

EBSボリュームの拡張

ファイルを削除してもボリューム容量の圧迫が解消しない場合や、削除しても良いファイルが見つからない場合は、EBSボリュームサイズの拡張を行いましょう。

※AWS無料枠について
AWSではアカウント作成から1年間の期間は、EC2インスタンスを月に合計750時間・30GBまで無料で利用できます(2020年2月時点)。無料枠の範囲内で利用したい場合は、使用しているEC2インスタンスのEBSボリュームが合計で30GBを超えないように注意してください。

Cloud9インスタンスの停止

まずはCloud9インスタンスが動いているインスタンスを停止しましょう。

Cloud9のコンソールを開き、ボリュームを拡張したいインスタンスの名前の部分をクリックします。

Cloud9環境の詳細が表示されるので、「Go To Instance」をクリックします。

すると、このCloud9環境が動作しているEC2インスタンスが表示されます。

右上の「インスタンスの状態」から「インスタンスを停止」をクリックします。状況によって停止まで少し時間がかかる場合があります。

「インスタンスを終了」を選択すると環境が削除されてしまうので、間違えないように注意してください。

ボリュームの変更

インスタンスの状態が「停止済み」となっていることを確認してください。

インスタンスの詳細で「ストレージ」をクリックすると、このEC2インスタンスのボリューム情報が確認できます。

「ボリュームID」をクリックして、ボリュームの詳細画面に飛びます。

「ボリュームの変更」をクリックします。

「サイズ」に変更したいボリューム容量を入力し、「変更」を押します。

ここでは、ストレージを10GBから16GBに変更します。

ボリューム変更を実行するか聞かれるので、「はい」を選択します。

ボリューム変更中は「状態」がmoidyfingとなって黄色いランプが現れます。少し時間がかかります、ランプが緑色になったら変更完了です。

予期せぬ不具合を避けるため、ボリューム変更中はCloud9インスタンスを起動しないようにしてください。

Cloud9インスタンスの再起動

コンソールからCloud9インスタンスを起動します。

ターミナルでlsblkコマンドを実行し、ボリュームの割り当て状況を確認しましょう。


$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 16G 0 disk
└─xvda1 202:1 0 10G 0 part /

この場合は、ボリュームの変更によりxvdaのディスク容量が16GBになったことが分かります。

しかしxvda1というパーティションには10GBしか割り当てられていません。そこでgrowpartコマンドを用いて、パーティションサイズを拡張します。


$ sudo growpart /dev/xvda 1
CHANGED: disk=/dev/xvda partition=1: start=4096 old: size=20967390,end=20971486 new: size=33550302,end=33554398

次にパーティションを拡張したら、ファイルシステムのサイズも合わせて変更する必要があります。以下のコマンドを実行してください。


$ sudo resize2fs /dev/xvda1
resize2fs 1.43.5 (04-Aug-2017)
Filesystem at /dev/xvda1 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/xvda1 is now 4193787 (4k) blocks long.

再度以下のコマンドを実行してみましょう。


$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 16G 0 disk 
└─xvda1 202:1 0 16G 0 part /

ファイルシステムを16GBに拡張することができました!

動画でプログラミング入門をしよう

オンライン学習サービスProglus(プログラス)でプログラミングを学び、創れる人になろう!

プレミアムプランを2週間無料体験しよう

今すぐ詳細を確認する

Filed Under: AWS Tagged With: AWS Cloud9

Primary Sidebar

Proglus(プログラス) 採用情報 FindU

Twitter

Follow @programmingnavi Tweets by programmingnavi

人気の記事

  • VirtualBoxでNATとホストオンリーアダプターによる安全なネットワーク環境構築方法
  • VSCodeで画像が表示されない場合の対処法
  • VSCodeの基本~プロジェクトフォルダの設定方法について解説します!
  • Visual Studio Codeのメニューを 日本語化する方法と英語化する方法について解説!
  • Node.jsをmacOSからアンインストールする方法
  • MySQL WorkbenchからMySQLサーバーへの接続時やSQLファイルを取り込み時にエラーが発生した時の対処方法
  • JavaScriptの「net::ERR_FILE_NOT_FOUND」エラーが出る原因と対処方法を紹介!
  • 【Arduino入門】LCD(液晶ディスプレイ)に文字を表示しよう
  • MySQLをXAMPPを使ってWindows環境にインストールする方法
  • MAMP for MacOSによるMySQLのインストール方法

最近の投稿

  • 【SQL】ER図(Entity-relationship Diagram)について解説します!
  • 【MySQL】公式インストーラー(dmg)を使って、MySQLサーバーをmacOSにインストールする方法を解説
  • 【AWS Cloud9】Gitで使用するエディタを再起動してもvimの設定にする方法
  • 【VSCode】アクティビティバーに拡張機能アイコンが表示表示されていない場合の解決方法
  • 【Windows】Gitをインストールする方法についてプログラミング入門者向けに解説します

カテゴリー

  • Arduino入門
  • AWS
  • その他
  • エンジニアのしごと
  • エンジニアへの道
  • ツールの使い方
  • ニュース
  • プログラミング入門
  • 電子工作入門

タグクラウド

AI AWS AWS Cloud9 Cloud9 CodeWing CSS Emmet GCP Git GitHub Heroku HTML JavaScript Linux macOS MySQL MySQL Workbench node.js Nuxt.js Proglus Python Ruby Ruby on Rails SQL Udemy Visual Studio Code vscode Vue.js Web開発 Windows インストール エラー エンジニア オンライン学習 サーバー スクリーンショット セール プログラミング プログラミング入門 プログラミング学習 ユーデミー 初心者 未経験 機械学習 開発環境構築

アーカイブ

  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年6月
  • 2021年4月
  • 2021年3月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年11月
  • 2019年9月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月

検索

Copyright © 2023 · programmingnavi.com ・About・プライバシーポリシー