すたらブログ

文系Webプログラマの備忘録

Ubuntuにスタンドアロン版のHerokuToolbeltをインストールして、ついでにPHPファイルをデプロイしました

目次

  1. 環境
  2. スタンドアロン版を選んだ経緯
  3. Debian/Ubuntu版導入の失敗記録
  4. スタンドアロン版をインストール
  5. "heroku"コマンドにパスを通す
  6. herokuにSSH公開鍵を追加する
  7. herokuにPHPアプリを作成する

環境

スタンドアロン版を選んだ経緯

普通なら、下記を開いてDebian/Ubuntu向けの手順に従えばdebパッケージ版のToolbeltをインストールできるはずです。

以前、別のPCに入れたときは上手くいきました。(->過去の記事) が、なぜか今回は上手くいかなかったのでスタンドアロン版を入れました (-_-;)

Debian/Ubuntu版導入の失敗記録

Debian/Ubuntu版の場合、下記のコマンドを実行しても正常に終了しませんでした。

$ sudo wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh

どうもapt-get updateする段階で出ているようです。
/etc/apt/sources.list.d/heroku.listでのリポジトリ指定の記述は下記の通り。

deb http://toolbelt.heroku.com/ubuntu ./

どうもこれが気になったので書き換えてみました。

deb http://toolbelt.heroku.com/ubuntu raring main

が・・・・駄目っ・・・・・!

$ sudo apt-get update
W: http://toolbelt.heroku.com/ubuntu/dists/raring/main/binary-i386/Packages の取得に失敗しました  404  Not Found

E: いくつかのインデックスファイルのダウンロードに失敗しました。これらは無視されるか、古いものが代わりに使われます。

orz

スタンドアロン版をインストール

そんなわけでスタンドアロン版を使います。
しかしここでも公式ページの手順に従っても上手くいかなかったので、install.shに書かれていた処理の中から選びとって手動で実行しました。
といっても、下記の通り、AWSに置いてある圧縮ファイルをDLして解凍して適切な場所に設置しただけです。

$ wget https://s3.amazonaws.com/assets.heroku.com/heroku-client/heroku-client.tgz
$ tar zxvf heroku-client.tgz
$ sudo mv ~/heroku-client /usr/local/heroku

"heroku"コマンドにパスを通す

~/.profileの末尾に追加します。

PATH="$PATH:/usr/local/heroku/bin"

これで端末の中で長々とパスをつけずに"heroku"と入力するだけでコマンドを気軽に使うことができます。

herokuにSSH公開鍵を追加する

$ heroku keys:add ~/.ssh/id_rsa.pub

追加せずにいきなりデプロイしようとしたら『認証できません!』って怒られちゃいました。

$ git push heroku master
The authenticity of host 'heroku.com (50.19.85.154)' can't be established.
RSA key fingerprint is 8b:48:5e:67:0e:c9:16:47:32:f2:87:0c:1f:c8:60:ad.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'heroku.com,50.19.85.154' (RSA) to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

これで心置きなくherokuにログインできます。

$ heroku login
/usr/local/heroku/lib/heroku/updater.rb:164: warning: Insecure world writable dir /opt/lampp/bin in PATH, mode 040777
Enter your Heroku credentials.
Email: toumin.m7@gmail.com
Password (typing will be hidden): 
Authentication successful.

herokuにPHPアプリを作成する

(修正: 2015-01-04) HerokuがPHPを公式にサポートしたことにより、手順が大幅に変わりました。 PHPアプリをデプロイする手順は下記の記事にまとめました。

Windows機でHerokuにPHPファイルをデプロイしました - すたらブログ