IBM Cloud (Bluemix) を利用して5分でWebサーバーを公開する
開発中など、一時的にローカルじゃないWebサーバーを立てたい時ってありますよね。他ドメインに置いたデータをアクセスするロジックを試したい、とか。テスト中のページをメンバーに見てもらいたい、とか。
IBM Cloud (Bluemix)アカウントを持っている場合、5分もあればWebサーバー環境を起動できて、不要になったらすぐ消せます。便利なので、ぜひ試してみてください。
前提条件
以下の条件を満たしている方であれば誰でも利用できる小技です。
- IBM Cloud (Bluemix) アカウントを持っていること
- CFツールを導入 していること
- 実行できる仮想マシンの枠が余っていること (特に無料アカウントの場合)
Web サーバーの作成
ターミナル (Windowsだとコマンドプロンプト) を起動し、適当なディレクトリで以下のコマンドを入力してIBM Cloud(Bluemix) にログオンします。
cf api https://api.ng.bluemix.net
cf login
続いて以下のコマンドを入力し、作業ディレクトリを作成します。'yamachan-web-test' はユニークである必要がありますので、ご自身で決めた適当な文字列に置き換えて入力してください。
md yamachan-web-test
cd yamachan-web-test
さて、ここからが本番です。以下のように入力して必要なファイルを作成します。
echo root: public > Staticfile
md public
echo Hello Bluemix > public/index.html
これで準備は完了です。以下のコマンドでWebサーバーを作成します。
cf push yamachan-web-test -m 64M
以下のように表示されればokです。
Webブラウザで表示されたURLにアクセスし、表示を確認しましょう。
Web サーバーの更新
作成した public ディレクトリの中身が、今回作成した Web サービスでそのまま公開されます。以下のように index.html の内容を修正し、cf push で IBM Cloud (Blluemix) 環境に反映します。
echo !! >> public/index.html
cf push yamachan-web-test -m 64M
Webページが更新されましたね。
Web サーバーの削除
Web サーバーが不要になったら以下のコマンドで作成したサービスと、公開時に自動設定されたルート設定を削除します。
cf ds yamachan-web-test
cf delete-route mybluemix.net -n yamachan-web-test
解説
今回のサービス利用のポイントは staticfile-buildpack の利用です。
CF (Cloud Foundry) 用のビルドパックには多くの種類がありますが、staticfile は nginx というWeb サーバーを動かすためのシンプルな環境です。
IBM Cloud (Bluemix) 環境に cf push で公開する際に、自動的にビルドパックの選択がおこなわれるのですが、Staticfile という名称の設定ファイルがあると、この staticfile-buildpack が選択されます。
このビルドパックはシンプルなので、実行にそれほどメモリを必要としません。そこで cd push の際に -m 64M オプションを付与することで、作成される仮想環境のメモリに 64M Bytes を指定しています。
設定ファイル Staticfile には root 指定だけが記載されており、public ディレクトリが指定されています。なのでWebサイト公開後はこの public ディレクトリがサーバーのルートとして公開され、配置されたファイルにアクセスできます。
おわりに
IBM Cloud (Bluemix) および Cloud Foundry 環境において、staticfile-buildpack は非常にお手軽、かつ便利なものです。
また CF の仕組み自体の便利さと、ビルドパックの自動選択の手軽さがうまくマッチして、お手軽に利用できる良い例になっていると思います。
ちょっとしたテストや公開用に、そして初心者の方が試す際の最初の一歩として、ぜひ活用してみてください。
Author And Source
この問題について(IBM Cloud (Bluemix) を利用して5分でWebサーバーを公開する), 我々は、より多くの情報をここで見つけました https://qiita.com/yamachan360/items/922434a093ef127d4971著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .