質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

729閲覧

Vagrant + VirtualBox の仮想環境で開発したRailsのアプリをAWSでデプロイしたい

Ko-program

総合スコア11

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2021/10/02 03:44

編集2021/10/02 03:51

https://teratail.com/questions/355134
こちらで「Windows10では、仮想環境なしで開発したアプリはAWSでデプロイできない」といわれたので
Vagrant + VirtualBox の仮想環境で同じrailsのアプリを作ったのですが、AWSでのデプロイの方法がわかりません。

AWSのデプロイといえば、pemファイルのキーペアをDownloadsフォルダに保存し、
それを.sshフォルダ移動すればAWSにログインできるようになりますが、

仮想環境ありきでのデプロイは全く経験したことがないので
調べようにもどこから手をつければいいかがわかりません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

VirtualBoxのOS上からEC2にSSHすればいいだけではないでしょうか?

sshするために使う鍵は別にどこに保存しててもいいのであまり関係ありません。
どうせコマンドのオプションでパスを指定するので。
VirtualBoxで動かしているOSの中に鍵ファイルを持っていけばそこからEC2インスタンスに接続できるでしょう。
鍵ファイルは中身がテキストなので、適当な名前でテキストファイルを作ってコピペして保存しても使用できるはずです。

ついでにいうと、Vagrant + VirtualBoxと書いただけではどのOSで開発したのかわからないです。
それを使ったとして、VirtualBoxでWindowsを使っていたら目的は達成できません。

もしくはVirtualBoxのOSとWindowsの間で共有フォルダを設定してそこにファイルを配置するかですね。
そちらについては調べればやり方が出てくるのでここでは言及しません。

ちなみに、個人的にはWSLが使えるならVirtualBoxを使うよりもそちらでUbuntuを動かすことをおすすめします。


質問とは直接関係ないですが重要なことなので補足すると

Windows10では、仮想環境なしで開発したアプリはAWSでデプロイできない

該当の質問を見るとそんな言い方はされてないですし、語弊のある言い方です。
Windows版のRubyを使うと問題が発生した場合(おそらく依存関係の問題で)解決できない可能性がある、とは書いてあるのでそれ以上でもそれ以下でもありません。(ここでは「それ以上」の解釈をしています)
それに、おそらくはAWS上ではLinux(それも、おそらくはAmazon Linux2)を使って動かすことを暗黙の前提として書いているので、「AWSでデプロイできない」とまで言うのは正しくありません。
文章は前提を考慮してどこまでが対象範囲かを解釈して読むようにしましょう。
それをせずに拡大解釈をすると誤解を招く原因になります。

投稿2021/10/02 09:11

yu_1985

総合スコア7471

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Ko-program

2021/10/02 09:50 編集

Vagrant + Virtualbox でのOSとはなんですか? それっぽいことを話すとしたら vagrant box list で bento/centos-7.5 と bento/ubuntu-18.04 というのが出てきて、 Vagrantfile には config.vm.box = "bento/centos-7.5" と書かれていました。
yu_1985

2021/10/02 11:48

それがわからないでどうやって使っていたんでしょうか…。 その設定ならcentos7.5のイメージを使っているはずです。
Ko-program

2021/10/03 06:18

仮想環境に関しては全くの初心者なもので
Ko-program

2021/10/03 06:28

普通に仮想環境にログインした状態からAWSにSSHすればいいと受け取りますが、 それでよろしいでしょうか。
yu_1985

2021/10/03 08:15

初心者かどうかは関係なく、普通に使ったらboxを追加する時に使用するOSのboxを選ぶはずなのでそこで何を使用するかを自分で指定することになりますが、そこで何を使っているか分からないという状況になるのは中々想像し難いです。 その通りなのでやってみて下さい。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問