AWS EC2 に SSH を使ってローカルからファイルをコピーする

クラウド

前回の続きです。

AWS EC2 で Django で作った Web アプリを動作させる ~準備編~
前回の続きです。Django で作った Python の Web アプリをクラウドサービスである AWS EC2 上で動作させるための準備をします。なお、EC2 へは Teraterm を使用して接続するものとします。インストール...

今回は、SSH で ローカルにある Django のプロジェクトファイルを、EC2 へアップロード(コピー)することを目標とします。

SCP クライアントの用意

EC2 上で動作している ubuntu は、SSH のサーバーとして動作しています。
ですので、SSH による遠隔ファイルコピーが可能なのですが、それをするためにはローカルに SCP が実行可能な環境を用意する必要があります。

Windows では、SCP クライアントとして WinSCP という OSS があるので、今回はそちらを利用します。

WinSCP のインストール

下図のように「WinSCP-XXX-Setup.exe」を選択します。

インストールすると、以下のように起動します。

EC2 へ SCP できるようにするための設定

EC2 のインスタンスの IP アドレスを取得します。

AWS のサービスより EC2 を選択し、以下のように「実行中のインスタンス」を選択します。

「IPv4パブリックIP」に該当するところが、SSH 先のIPアドレスになります。

WinSCP の設定画面にて、以下のように入力します。
「ホスト名」は上記のIPアドレスになります。
パスワードではなく、秘密鍵を使用するため、「設定」を押します。

「認証」を選択し、秘密鍵(****.pem)を選択します。

その際、以下のようにPuTTY形式にして良いか聞かれるので、基本OKでいいです。

接続します。

警告は「はい」でいいです。

すると、EC2 上の ubuntuと接続されました。

SCP で EC2 へファイルをコピーする

アップロードするフォルダを右クリックして、アップロードを選択します。
(今回は myfirstapp という Django のプロジェクトフォルダをアップロードします)

転送モードバイナリで OK します。

すると、少し時間がかかりますが、EC2 上にフォルダがコピーされます。
EC2 の ubuntu 上で確認してみると、

(py36) ubuntu@xxxx:~$ ls
myfirstapp  py36

となっており、 myfirstapp がコピーされていることが確認できました。

コメント

タイトルとURLをコピーしました