PHP Fog

PHP Fog

概要

 状態:終了  閲覧数:2,663  投稿日:2012-05-06  更新日:2014-05-31
日本語で言及している人が多い
PHP版HerokuなPaaSサービス、PHP Fogが一般公開
PHPのPaaSを提供する「cloudControl」と「PHP Fog」 - Publickey

2011-07-02 - ミショニポー
>phpmyadminが使えて、SSHが使えて、SSLも使えて、htaccessもつかえて、まいっちゃうサービスですね

公式サイト
PHP Fog — Rock Solid Cloud Platform for PHP
公式ドキュメント?
Shared vs Dedicated | AppFog Developer Center

PHP Fogがフリーアカウントで3つのクラウド環境が使えるように | T-PRO-FILE
掲載されているキャプチャに「PyroCMS」とかあるんだね、普通に。
→CORESERVERへのインストールで苦労した思い入れのあるCMS(と言うかまだ完全稼動できていないし…)

仕事帳: PHP Fog に SOY CMS2をインストール
[PHP]PHP Fogでデプロイしてみる | Fujitaiju Blog -There is no border in the Internet!-
PHP Fogを使ってみました « サーバーワークス エンジニアブログ

そう言えば、herokuとかずっと以前にアカウント作成しただけで終わってるけど、
これから使ってみようかな。

何か、これまではどうにかして、
「CORESERVER」の「Ruby」と「PHP」バージョンを上げようと色々試してみたけど、
あんまりめぼしい成果は上がってないんだよね。
よく分かんない。

使ってみて、良さ気だったら、「引越」もしくは一部「乗り換え」しようかな。
「CORESERVER」で2カウント持ってるなんて、今日びおかしいかもよ>オレ

何れにせよ、使ってみないと何ともいえないので、これから試してみる予定。

取り敢えず、「FuelPHP」「Cake PHP最新」「Rails最新」「PyroCMS」とかが動くサーバ環境が欲しいわ



6/14
<PHP Fog>

◆「TRY IT FREE」クリック
PHP Fog — Bringing Cloud Computing Down To Earth

◆メール認証なしに、画面遷移
PHP Fog — Create a new App
・「Step 1: Choose an application」より、「FuelPHP」選択
Step 2: Application Details

FuelPHP
FuelPHP is a simple, flexible, community driven PHP 5.3 web framework based on the best ideas of other frameworks with a fresh start.

URL
http://fuelphp.com
Version
1.2
License
MIT License
Owner
FuelPHP Development Team

Domain
.phpfogapp.com
Please note: Apps on the shared cloud must be created with a .phpfogapp.com subdomain. You will be able to change to a custom domain name later for $5 per month.

・「create app」クリック

>fuelphp0.phpfogapp.com

>http://fuelphp0.phpfogapp.com/
>Status: Deploying App.
>Please wait, your application is still starting.


PHPFog - Please wait...
>Please wait...

>If you just created your app, please wait a few seconds and refresh. It shouldn't take more than a minute. If you need assistance, please Contact Support as soon as possible!

とりあえず、ちょっと様子見……



6/19
<PHP Fog>
>Please wait...

>If you just created your app, please wait a few seconds and refresh. It shouldn't take more than a minute. If you need assistance, please Contact Support as soon as possible!
というわけで、いつまで待ってもちょっと待ってね、状態なわけです…

phpfog がヤバい件 - c/fe
>phpfogにファイルをアップロードするには、ffftpやfilezillaとかじゃなくて、gitをつかいます
うう…

・調べたけど、どうしたら良いかさっぱり分からない

・SSH公開鍵説明は省略とか、Mac環境での説明とか、そんなんばっか。

諦めて、
「Git」「Windiows」「SSHキー」で検索やり直し

・Cygwinインストールが必要なの?
・面倒くさいよー
・「Cygwin」「TortoiseGit」「msysGit」
・何がどう違うの?

◆公式
Generating SSH Keys · github:help
◆このサイトが一番詳しそうなので、ここを参考にしてみよー
Github を Windows で使ってみる 2011 年版 | Numb.

◆予備参照予定サイト
Windowsにgitをインストールして、githubを利用する | karakaram-blog
小粋空間: Github を Windows で利用する(Git GUI編)
Windows 上に Git 環境を構築する方法(TortoiseGit と msysGit) | 日本Symfonyユーザー会


■手順
1.最新バージョンの msysgit ダウンロード
  ▽Git - Downloads
  Git-1.7.10-preview20120409.exe

2.インストール
  D:\Program Files (x86)\Git
  インストール先変更した以外は、全てデフォ

3.SSH keypair 作成「generate an SSH keypair and set your local git config.」
Generating SSH Keys · github:help

$ cd ~/.ssh

◆「SSH keys」が存在していない場合、以下の手順は省略可
・別に実施しても構わない
・「No such file or directory」と表示されるだけ
$ mkdir key_backup
$ cp id_rsa* key_backup
cp: cannot stat `id_rsa*': No such file or directory

$ rm id_rsa*
rm: cannot remove `id_rsa*': No such file or directory
◆省略可。ここまで

$ ssh-keygen -t rsa -C "メールアドレス"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):ここで、パスワード入力する!
Enter same passphrase again:ここで、再度パスワード入力する!
Your identification has been saved in /c/Users/Administrator/.ssh/id_rsa.
Your public key has been saved in /c/Users/Administrator/.ssh/id_rsa.pub.
The key fingerprint is:
○○ メールアドレス


4.SSHキーの作成
・githubを利用するにはSSHキーの作成が必要
・「スタート」→「すべてのプログラム」→「Git」→「Git GUI」を選択してGUIを起動
・「ヘルプ」→「SSHキーを表示」を選択
・「鍵を作成」をクリック
・任意のパスフレーズを入力
・再度、同じパスフレーズを入力


5.githubユーザー登録


6.SSHキーの登録
・作成したSSHキーを、githubの自アカウントに登録
・自分のアカウントでログインでしたgithubのページで「SSH Keys」をクリック
・「Add SSH Key」をクリック
・「Title」に適当な名称を設定して「Key」にさきほどコピーした内容(SSHキー)をペーストして「Add Key」をクリック


うーん、疲れた。
「SSHキーの登録」まで終わったので、続きは次回



6/30
<PHP Fog>
Welcome to Git (version 1.7.10-preview20120409)

$ ssh git@github.com
Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':

Hi bus4! You've successfully authenticated, but GitHub does not provide shell ac
cess.
Connection to github.com closed.

$ git config --global user.name "自分のユーザー名"
$ git config --global user.email "自分のメールアドレス"

cd ~/
mkdir test
cd test
git init

touch README
git add README
git commit -m 'first commit'
git remote add origin git@github.com:e1blue/phpfogproject1.git
git push origin master

・適当にユーザー名を付けたが、後で変更するのは面倒臭そうなので、今の内、設定画面よりユーザー名を変更することにした
e1blue


・で、問題は、「PHP Fog」
・ここからどーやってするのか分からないなー、と思い、サイトを見てみたら、いつの間にか「FuelPHP Framework」インストールされてるよ
・何で?
・インストールされたのはいいけど、これまでダメだったのに、何で急にインストールされたのかしら?
FuelPHP Framework

・で、もう一つのサイトを見たら、「PyroCMS」も無事インストールされてるみたい
Un-named Website • Add your slogan here

・そうなのよね。「PHP Fog」側でデフォルトで用意されてるってことは、「Git」とかなくても、デフォルトの状態までは、「PHP Fog」管理画面からインストール出来るはずなんだよね。
・一番初めにアプリインストールしたのが、6/14
・6/19の時点では、Please wait...
・6/30でOKってことは、アプリ設置に、最低でも5日はかかるってこと?
・そんなわけないよね。何か勘違いしてる?
・まあ、設置されたから、とりあえずいいけど…



7/3
<「PHP Fog」上に(ほぼ自動)作成された「FuelPHP」ソースコードを、Gitで、ローカルにダウンロード>
・3日ぐらい(?)かかった
・アプリ自体をインストールする際も思ったんだけど、待ちの時間とかあるのかな
・同じことやってんのに、何日か経過してやったらうまくいったんだけど、それってどゆこと?
・色々試行錯誤しながらあちこちの情報をコピペしまくったので、手順が分かんなくなっちゃったよ

・Gitコマンドターミナル(?)って、日時が出ないんだね
・後で見たとき、いつ何をどーしたかってのが、分かりづらいわ


Generating SSH Keys · github:help

Welcome to Git (version 1.7.10-preview20120409)


Run 'git help git' to display the help index.
Run 'git help <command>' to display help for specific commands.

Administrator@E1BLUE-PC ~
$ cd ~/.ssh

Administrator@E1BLUE-PC ~/.ssh
$ ls
id_rsa  id_rsa.pub  key_backup  known_hosts

◆バックアップ用フォルダ生成
Administrator@E1BLUE-PC ~/.ssh
$ mkdir key_backup
mkdir: cannot create directory `key_backup': File exists

◆コピー
Administrator@E1BLUE-PC ~/.ssh
$ cp id_rsa* key_backup

◆バックアップ用フォルダへコピーしたので、元ファイルは削除
Administrator@E1BLUE-PC ~/.ssh
$ rm id_rsa*

◆( )フォルダ内に鍵ファイルを生成
Administrator@E1BLUE-PC ~/.ssh
$ ssh-keygen -t rsa -C "メールアドレス"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa):

◆パスフレーズを入力後、Enter
Enter passphrase (empty for no passphrase):

◆同じパスフレーズを再度入力後、Enter
Enter same passphrase again:
Your identification has been saved in /c/Users/Administrator/.ssh/id_rsa.
Your public key has been saved in /c/Users/Administrator/.ssh/id_rsa.pub.
The key fingerprint is:
ハッシュ(?) メールアドレス


・GitHubアカウントページ “SSH Public Keys” (SSH 公開鍵)セクションの “add another public key” (別の公開鍵の追加)をクリックして、“key” フィールドに public key (id_rsa.pub) の中身を入力

・sshの公開鍵をphpfogに登録
 $ cat ~/.ssh/identity.pub
 をフルコピーして
 https://www.phpfog.com/account#/ssh_keys
 Public Key欄へ貼り付け


■コピーコードを確認
 phpfog
 https://www.phpfog.com/apps/{アプリのID}#/source_code
 Clone your git repository
 git clone git@git01.phpfog.com:○○.phpfogapp.com


◆コピー予定の(任意の)ローカルフォルダへ移動
Administrator@E1BLUE-PC ~/.ssh
$ cd ../

Administrator@E1BLUE-PC ~
$ cd test

Administrator@E1BLUE-PC ~/test (master)
$ ls
README  fuelphp

Administrator@E1BLUE-PC ~/test (master)
$ cd fuelphp/


Administrator@E1BLUE-PC ~/test/fuelphp (master)
$ ssh-keygen -t rsa -C "メールアドレス"git clone ○○
hp0.phpfogapp.com
Too many arguments.
Usage: ssh-keygen [options]
Options:
 -a trials   Number of trials for screening DH-GEX moduli.
 -B          Show bubblebabble digest of key file.
 -b bits     Number of bits in the key to create.
 -C comment  Provide new comment.
 -c          Change comment in private and public key files.
 -e          Convert OpenSSH to RFC 4716 key file.
 -F hostname Find hostname in known hosts file.
 -f filename Filename of the key file.
 -G file     Generate candidates for DH-GEX moduli.
 -g          Use generic DNS resource record format.
 -H          Hash names in known_hosts file.
 -i          Convert RFC 4716 to OpenSSH key file.
 -l          Show fingerprint of key file.
 -M memory   Amount of memory (MB) to use for generating DH-GEX moduli.
 -N phrase   Provide new passphrase.
 -P phrase   Provide old passphrase.
 -p          Change passphrase of private key file.
 -q          Quiet.
 -R hostname Remove host from known_hosts file.
 -r hostname Print DNS resource record.
 -S start    Start point (hex) for generating DH-GEX moduli.
 -T file     Screen candidates for DH-GEX moduli.
 -t type     Specify type of key to create.
 -v          Verbose.
 -W gen      Generator to use for generating DH-GEX moduli.
 -y          Read private key file and print public key.

◆「PHP Fog」上に作成されたソースコードを、ローカルにコピーするも失敗
Administrator@E1BLUE-PC ~/test/fuelphp (master)
$ git clone  ○○
Cloning into 'fuelphp0.phpfogapp.com'...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

◆「PHP Fog」上に作成されたソースコードを、ローカルにコピーするも失敗
Administrator@E1BLUE-PC ~/test/fuelphp (master)
$ git clone  ○○
Cloning into 'fuelphp0.phpfogapp.com'...
Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':
Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':
Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':
Permission denied (publickey).
fatal: The remote end hung up unexpectedly


Administrator@E1BLUE-PC ~/test/fuelphp (master)
$ ssh -T git@github.com
Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':
Hi e1blue! You've successfully authenticated, but GitHub does not provide shell
access.

◆「PHP Fog」上に作成されたソースコードを、ローカルにコピーするも失敗(gitフォルダだけが作成さた)
Administrator@E1BLUE-PC ~/test/fuelphp (master)
$ git clone  ○○
Cloning into 'fuelphp0.phpfogapp.com'...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

◆「fuelphp0.phpfogapp.com」フォルダは既に存在している
Administrator@E1BLUE-PC ~/test/fuelphp (master)
$ git clone ○○
fatal: destination path 'fuelphp0.phpfogapp.com' already exists and is not an em
pty directory.

・「fuelphp0.phpfogapp.com」フォルダリネームするもダメ
・ところが、数日後同じ処理を行なうと、無事、通過した

◆リポジトリのクローンを作成&コピー
Administrator@E1BLUE-PC ~/test/fuelphp (master)
$ git clone  ○○
Cloning into 'fuelphp0.phpfogapp.com'...
Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':
remote: Counting objects: 1293, done.
remote: Compressing objects: 100% (675/675), done.
rRemote: Total 1293 (delta 546), reused 1293 (delta 546)eceiving objects:  79% (

◆「git remote -v」コマンドも、無事通るようになった
Administrator@E1BLUE-PC ~/test/fuelphp (master)
$ git remote -v
origin  ○○ (fetch)
origin  ○○ (push)


<今日の疑問>
・「PHP Fog」「github」「ローカル」関係が不明
・「PHP Fog」から「ローカル」コピーすれば、自動的に「github」へ反映されるのかと思ったけど、そういわけではないらしい
・アップロードは、「ローカル」→「github」→「PHP Fog」?
・ダウンロードは、「PHP Fog」→「ローカル」もしくは、「github」→「ローカル」?


<現状>
■CLOUDS1
FuelPHP Framework
e1blue/phpfogproject1
・概要 … FuelPHP Framework 1.2
・ローカルコピー … 100%


■CLOUDS2
Un-named Website • Add your slogan here
・概要 … 「PyroCMS」(CIベースCMS)
・ローカルコピー … 0%

■PHP Fog
PHP Fog — Bringing Cloud Computing Down To Earth



<次回予定>
PHPfogで利用できないPHP関数
PHP Fog — Documentation Frequently Asked Questions

Herokuで鍵がPermission denied (publickey). になる時 - opamp_sandoの日記 ...でいいよね
「Permission denied (publickey).」と言われてGitHubが使えなくなった場合の対処法 - ただのにっき(2009-10-24)
Github を Windows で使ってみる 2011 年版 | Numb.
図解でトライphpfog - c/fe
Kensaku&apos;s blog: PHP Fogを使ったPHPアプリ開発の始め方
・「PHP Fog」「github」「ローカル」関係を確認
・「PHP Fog」から「ローカル」コピーすれば、自動的に「github」へ反映されるわけではない?
・アップロードは、「ローカル」→「github」→「PHP Fog」?
・ダウンロードは、「PHP Fog」→「ローカル」もしくは、「github」→「ローカル」?

・「PHP Fog」無料アカウントの仕様確認
・これからサイト作成していくに辺り、どんな制限があるのか、を事前に確認しておく
・期間限定?
・有料に切り替わるタイミングは?
・その際の通知の仕方は?
・「Git」からしか更新出来ないってことは、最低でも「Git」にコードは残るのか?
・DBDUMPは可能?
・「Git」って使い方が良く分からない。SSHみたいなものかしら?
<ロードマップ>
1.PyroCMSカスタマイズ
2.Halogyカスタマイズ
3.WordPressカスタマイズ
4.新しいレンサバ環境「PHP Fog」「CroudControl」「heroku」
5.自作