暗号通貨.py

ビットコインやブロックチェーンの技術に衝撃を受け、プログラミングの勉強を開始。現在はPythonを勉強中。

Programming

Heroku×bottleを使って14分32秒でWebアプリを公開する

Pythonのフレームワークを使って何かWebアプリを作ろうと思っています。

代表的なフレームワークにはDjango、Flask、Bottleがあるようで、この順に機能が充実しているようです。

サクッと作ってみたいなと思っていて調べていると面白い記事を見つけました。

Heroku×bottleを使って4分33秒でWebアプリを公開する

Bottleは軽量Webサーバーに特化したフレームワークで、この記事の方は4分33秒もかからずBottleを利用したHello Worldアプリを作っています。

サーっと記事を読むと、Herokuは以前触ったことがあったので、なんとなくできそう。

Python + Herokuでビットコインやブロックチェーン関連のニュースやブログの更新をつぶやくTwitter botをつくってみた(前編)

初心者がHerokuでハマったポイント

初心者の自分でも10分ぐらいでいけるんじゃね?と思い早速チャレンジ。

記事によると最低限の準備として挙げられていました。

  • 最低限
    • git
    • Python 2.7.9
    • heroku toolbelt
  • Pythonグローバル環境を汚したくない方は
    • pyenv
    • virtualenv

私は開発環境はpyenv + virtualenvで仮想環境を構築してpythonのバージョンは3.5.1で実行しました。

ここでストップウォッチ作動。

$ mkdir bottle

$ cd bottle
$ pip install bottle
app.pyの作成
import os
from bottle import route, run

@route("/")
def hello_world():
        return "Hello World!"

run(host="0.0.0.0", port=int(os.environ.get("PORT", 5000)))

$ pip freeze > requirements.txt

$ echo web: python app.py > Procfile

 

$ git init

$ git add .

$ git commit -m "initial commit"

$ heroku apps:create

Creating app... done, ⬢ arcane-inlet-16381

https://arcane-inlet-16381.herokuapp.com/ | https://git.heroku.com/arcane-inlet-16381.git

$ git push heroku master

ここまで順調だったのに問題が発生。以下のメッセージ。

fatal: 'heroku' does not appear to be a git repository

fatal: Could not read from remote repository.

Please make sure you have the correct access rights

and the repository exists.

herokuがgitリポジトリにありませんよ。なんじゃこりゃ。

こっちは急いでいるんだ。そういえばherokuにログインしていないから?と思い、

$ heroku login

うん、関係ないね。

調べると、どうやらgit remoteというコマンドが必要なようです。 heroku git:remote -a [アプリ名]

$ heroku git:remote -a arcane-inlet-16381

set git remote heroku to https://git.heroku.com/arcane-inlet-16381.git

再度git push

$ git push heroku master

・・・・・

https://arcane-inlet-16381.herokuapp.com/ deployed to Heroku

remote:

remote: Verifying deploy... done.

To https://git.heroku.com/arcane-inlet-16381.git

* [new branch]      master -> master

デプロイ成功!!

ブラウザでhttps://arcane-inlet-16381.herokuapp.comにアクセス。

スクリーンショット 2016-07-16 13.20.39

表示されました。

ここでストップウォッチを確認。

unnamed

 

14分32秒。 git remoteのタイムロスが痛かったなー。

ちなみにapp.pyのコードは完全コピペです。

次はBottleで自分でなにか作ってみます。

スポンサーリンク

adsense

スポンサーリンク

日本で一番簡単にビットコインが買える取引所 coincheck bitcoin

-Programming