Azure上に作成したWeb Appsにプログラムやデータを展開(デプロイ)するにはいろいろな手段があります。今回はFTPを使う方法を紹介します。
前回は、AzureのWeb AppsとしてインストールしたWordPressに対して、デバッグ用のコンソールで接続してファイルやシステム構成を確認したり、プロセスの一覧を表示したりしてみました。
今回は、Web Appsに対してファイルを送受信する方法(デプロイする方法)について見ておきたいと思います。仮想マシン(Azure VM)の場合は、Windows OSのリモートデスクトップの機能を使って簡単にファイルをアップロード/ダウンロードすることができました(第2回参照)。でもWeb Appsの場合はリモートデスクトップサービスが動作していないので、そのような方法は使えません。
Web Appsでは代わりに、FTPやGitなどのリポジトリ、デプロイツール、Azureファイルストレージサービスなどを使ってファイルを送受信することになります。今回使用しているWordPressは、あらかじめ用意されているイメージをインストールしたため何の手間もかかっていませんが、アプリを一から作る場合は、これらの手段を使ってプログラムやデータなどを送信する必要があります。
オンプレ管理者にとっては、この中ではFTPが一番なじみがあり、操作も簡単でしょう。GitやWebアプリのデプロイツールを使う方法もありますが、それらはアプリの開発工程と密接に結び付いているものが多く(アプリの開発→デプロイ→テストの工程を何度も繰り返すため)、開発者向きのツールといえます。それらについては、もう少し本格的なAzureアプリの開発を行うことになってから紹介したいと思います。
今回は一番基本となるFTPを使う方法を見ておきましょう。OneDriveやGit、その他のデプロイ手段については、今後回を改めて取り上げます。
まずは、Web Appsに対してFTPプロトコルでファイルを送受信してみましょう。
FTPでアクセスするためには、最初にFTPでアクセスするためのアカウントやパスワードなどを、Azureの管理用アカウントとは別に設定します。このためには、Web Appsのポータル画面を開き、メニューの[デプロイメント]−[デプロイ資格情報]を開きます。
するとFTPのユーザー名を入力する画面が表示されるので、適当な(推測されにくい)ユーザー名と、長くて複雑なパスワードを入力します。このFTP用のアカウント情報が漏れてしまうと、Webサイトにウイルスなどを仕込まれてしまう危険性があるので、必ず独自の類推しにくいアカウントを設定してください。
入力が完了したら、メニューの[設定]−[プロパティ]画面を開きます。
ここには、FTPなどで接続するために必要なホスト名やユーザー名情報などが表示されていますので、メモしておきましょう。後からFTPで接続するために必要になります。
以上の設定が終われば、Web AppsのファイルにFTPを使ってアクセスしたり、更新したりできるようになります。
FTPのクライアントソフトは何でもよいのですが、さすがにWindows OSに標準で付属しているコマンドラインのftp.exeは使いづらいので避けたいところです。セキュアな通信をするFTPS(FTP over SSL/TLS)もサポートされていないので、フリーソフトウェアなどで配布されているツールから使いやすそうなものを選ぶとよいでしょう。
今回は、FTP RushというフリーのFTPツールを使ってみました。インストール直後は英語メッセージになっていますが、メニューから日本語表示を選択できます。
FTPサーバへの接続設定は次のようにしています。接続先のホスト名やユーザー名、パスワードなどは先ほどメモしたものを使用します。ポート番号はFTPSでも21番のままで構いません。
コマンドラインのFTPではユーザー名やパスワードなどが平文のまま流れてしまいます。安全性を考えると、通信内容が暗号化されるFTPSプロトコルをサポートしたFTPツールを使うのが望ましいでしょう。
このように設定してからAzureのサイトに接続してみると、次のようにWeb Appsのサイト内のファイルが確認できるはずです。ファイルのダウンロードやアップロードなどができるかどうかも確認しておきましょう。
今回使っているWordPressでは、管理ツールの中に自分自身のコードを書き換えるためのエディタ機能も用意されているため、ソースコードを手元のPCにダウンロードする必要性は少ないかもしれません。でも、ファイルを全部バックアップしたり、大幅にカスタマイズしたコードに変えたり、大量の画像などのデータをアップロードしたりするなら、こうしたFTPツールが使えると便利です。
今回はFTPでWeb Appsサイトに接続して操作する方法を紹介しました。次回はWeb Appsの料金(課金)について見ていきたいと思います。
Copyright© Digital Advantage Corp. All Rights Reserved.