heroku へのソースコード push

heroku へのソースコード push

git push heroku master

で転送できます

次にDBの設定
これは heroku で行います

DBに関しては
Add-On で対応するので
heroku コマンドを使い、アプリに
PostgreSQL の Add-On をつける

heroku addons:add heroku-postgresql

を実行すると
DB名が
HEROKU_POSTGRESQL_SILVER_URL
となっているのでDBが使えるようになります

次にマイグレーションを実行します
heroku 側のアプリに対してコマンドを実行するには
heroku run を使います

heroku run rake db:migrate

でOK

これでブラウザからアクセスして試したいのですが
アプリのURLを忘れた場合

 heroku apps:info

とすれば調べることができます

今回は

Addons:        heroku-postgresql:hobby-dev
               heroku-postgresql:hobby-dev
Dynos:         web: 1
Git URL:       https://git.heroku.com/shrouded-chamber-59024.git
Owner:         snowpoollovely@gmail.com
Region:        us
Repo Size:     37 KB
Slug Size:     45 MB
Stack:         cedar-14
Web URL:       https://shrouded-chamber-59024.herokuapp.com/

となりました

これでアクセスしたものの

An error occurred in the application and your page could not be served. Please try again in a few moments.

If you are the application owner, check your logs for details.
となりエラーになります

herokuapp

heroku が動いていない可能性を考え

heroku ps:scale web=1 

を実行したもののすでに
now running となっているので別の問題ということに

Procfile を確認してみたら

web: bundle exec rails server - p $PORT

となっていたのが原因

これを修正し、再度

git add .
git commit -m "procfile 修正"
git push heroku master 

で再度転送すると、無事に稼働させることができました

herokuapp2

heroku 稼働のための rails アプリ(練習)その3

heroku 稼働のための rails アプリ(練習)その3

git で commit したものを
heroku に送るための準備をします

方法については
Rails+Herokuで5分でWebアプリ作るおっ( ^ω^)


ドットインストールを参考にさせていただきました
#06 heroku createしてみよう

ソースコードを送るには
ライブラリ依存関係を記したファイルと
Procfile が必要になるのでこれらを作成

Rails の場合、ライブラリの依存関係を示したファイルは
Gemfile としてすでにあるけど
Rails アプリをheroku で動かす場合
特殊な Gem が必要なので
Gemfile を編集します

cd heroku/mymemo/

でプロジェクトに移動し

vim Gemfile

で編集します

使用する gem は
rails_12factor なので
ファイル末尾に

gem 'rails_12factor', group: :production

として保存

group: :production
は本番環境でのみ使うときに指定

次に

bundle install

で反映します

次に Procfile の作成

vim Procfile

で作成して編集します

書き方にルールがあり、
web に関するものは
web というキーワードと決まっているので

web: bundle exec rails server - p $PORT

として保存

-p はポートの指定で
$PORT は環境変数のようなもの
これは Linux の $HOME とかと同じかんじ

キーワードは
web 以外にも
worker にすればバックグランドジョブだったりと
いろいろあるので調べてみるといいかも

ここまでできたら
git にこれらの追加したファイルを反映させます

git add .

ですべてのファイルを対象に追加します
. を指定すればすべて反映になります

次にコミットしたいので

git commit -m "Gemfile update  Procfile add"
と
-m オプションでコメントをつけておきます


次に Heroku へアプリを作成します

heroku create

を実行すると作成されます

実行すると、ログへ

https://shrouded-chamber-59024.herokuapp.com/ | https://git.heroku.com/shrouded-chamber-59024.git

と出ているので
https://shrouded-chamber-59024.herokuapp.com/
でアクセスできるようになってます

あと、heroku create すると
git のリポジトリも作成されるので
これを使えばgit で Heroku にソースコードをプッシュできます

ubuntu 14.04 に Evernote クライアントのインストール

ubuntu 14.04 に Evernote クライアントのインストール

Evernote を使うようになってきたので
ubuntu でも管理できるようにクライアントソフトの
everpad をインストールします

sudo add-apt-repository ppa:nvbn-rm/ppa

でリポジトリを追加

sudo apt-get update

でリポジトリ更新

sudo apt-get install everpad

でインストールできます

なお GitHub でソースが公開されています
https://github.com/nvbn/everpad

あとは Everpad を起動すれば
画面の右上にノートのアイコンがでるので
Setting and Management
をクリックします

everpad

Screenshot from 2016-04-17 07:19:53

すると設定画面になるので

everpad3

Authorities をクリックすると
Evernote の認証画面になりますので
アカウント情報をいれて
サインインをクリックします

everpad5

するとどの期間までアクセス可能にするか設定できるので
まずは1年間で行ってみました

everpad6

設定したら
承認するをクリックします

次に間隔の設定です
Sync delay はデフォルトで
30 minutes になっているので
これを
5 minutes にしました
これは同期する時間の設定で
minutes は分単位です

そして
Start with system にチェックをいれておきます

これらを終わらせたら
ノートのアイコンから
Please perform first sync
をクリックすれば同期されます

その後は
Last sync just now
をクリックすればすぐに同期できます

everpad7

なお
Evernote の使い道などに関しては
「Evernote」を十分に活用するための100の使い方

を参考にされるとよいかもしれません

私の使用用途はアイデアメモと
仕事の打ち合わせに使おうかなというかんじです

heroku 稼働のための rails アプリ(練習)その2

heroku 稼働のための rails アプリ(練習)その2

前回 Rails アプリの立ち上げまでできたので
Scaffold で設定

実行環境は ubuntu 14.04 64bit

続きからやるので、rails アプリのディレクトリまで移動

cd heroku/mymemo

次に scaffold 機能を使用

rails g scaffold Memo title:string body:text

gは generate の略

次に

rake db:migrate


マイグレーションすることでDB作成されるので

rails s

で動作確認

ブラウザで
http://localhost:3000/memos
へアクセスすると表示されるのを確認

heroku6

なお、IPアドレス:3000/memos
でもいいけどローカル環境なので、とりあえずlocalhost でアクセスしました

データ追加できるか実験もしておきたいので
New memo をクリック

入力画面になるので適当にデータをいれます

heroku7

これでデータが追加され、新しく項目が増えました

heroku8

動作確認はOKなので、これをgit に登録します
とはいってもローカルの git ですが

そして後で Heroku に登録するようにします

ctrl + c で サーバーを一度停止しておきます

まず

git init 

でリポジトリを作成します

次にインデックスに追加するので
git add を実行します
パラメータに . を指定するとすべてのファイルが対象になります


あとはコミットするのですが -m オプションを使い
コメントをつけておきます

git commit -m "initial commit"

“initial commit”
の部分がコメントになります

とりあえず git までできたので
次回は rails アプリを heroku に送る設定をしていこうと思います

heroku 稼働のための rails アプリ(練習) その1

heroku 稼働のための rails アプリ(練習)

まずは ubuntu で rails アプリをつくり
これを heroku に送るようにします

heroku の標準は postgresql なので
アプリを作成するときに
postgresql を使うように設定します

 rails new mymemo -d postgresql 

を実行
しかしエラーがでるため

/versions/2.3.0/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'

で検索し
bundle install時のエラー
https://teratail.com/questions/23754
を参考に

gem install bundler 

を実行

次に

bundle install

を実行したものの
Rails Could not locate Gemfile
とエラーがでるので、これも検索

Rails Could not locate Gemfileエラーについて

によれば
実行したディレクトリに Gemfile が存在しないため
このため作成した mymemo に移動し実行

cd mymemo

で移動し

vim Gemfile
[・shell]
で設定ファイルを開き
15行目の

# gem 'therubyracer', platforms: :ruby

の先頭の#を削除し有効化

これで

bundle install

を実行したもののエラー

An error occurred while installing pg (0.18.4), and Bundler cannot continue.
Make sure that `gem install pg -v '0.18.4'` succeeds before bundling.

となってしまうため

gem install pg -v '0.18.4'

を実行したもののこれもエラー

これを解決するために gem の postgreSQL をインストールする方法を探すことに

How to install PostgreSQL’s pg gem on Ubuntu?

を参考に

sudo apt-get install libpq-dev

で必要なライブラリをインストールしてから

bundle install

を実行することで無事にインストールできました

これで解決と思ったけど
localhost:3000 でアクセスするとエラー

heroku2

 gem install pg -v '0.18.4'

で追加したけど変わらず

ActiveRecord::NoDatabaseError
で検索することに

Railsでデータベースに接続できなくてエラーがでる

を参考にユーザが存在しないのを確認

sudo su postgres

でユーザを切り替え

createuser -P snowpool

でユーザを追加

これで解決すると思ったら、今度はDBが存在しないというエラーが発生

heroku3

createdb mymemo_development;

でDBを作成
念の為、できているかを

psql -l

で確認

heroku4

これで ctrl + d でユーザを戻し

rails s

を実行し。エラーがないことを確認

heroku5

とりあえずここまでできたので、次は Scaffold 機能の実験

heroku toolbelt インストール

heroku toolbelt インストール

ubuntu 14.04 にheroku toolbeltをインストールします

方法は
https://toolbelt.heroku.com/debian
に表示されてるので、これを参考にインストールします

herokutoolbelt

heroku toolbelt は Heroku コマンドを使うためのものです

wget -O- https://toolbelt.heroku.com/install-ubuntu.sh | sh

を実行すると 管理者パスワードを聞かれるので
通常はログインユーザパスワードをいれます

これでインストールをやってくれます

バージョンの確認は

heroku --version

とすればOK

次に heroku へログインするため

heroku login

を実行

すると
Email:
とでるのでHeroku で登録したメルアドを入力

Password (typing will be hidden):
とでたら Heroku のパスワードを入力
なお、セキュリティのため、パスワードは表示されません

これでログインできます
本来は公開鍵の登録があるようですがでなかったので
今後作成してみようと思います

はじめての ruby on rails

はじめての ruby on rails

rails を使いアプリを作るには rails new コマンドを使う

rails new アプリ名
となる

なお、以前に rails をインストールしたものの
.bash_profile にパスを通しても
反映されていないため、
.bashrc にパスを通すことに

Ruby on Rails 4.2 を Ubuntu にインストールする手順をかなり丁寧に説明してみました

を参考に、パスを通すようにしました

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL

今回は

rails new myapp

とした

実行するといろいろファイルが作られ
最後 bundle install が実行される

この bundle install は
必要なライブラリをインストールしている状態のこと

なお、実行にはかなり時間がかかる
終わったら

cd myapp 

して

rails server

を実行すれば php -S でやったように
サーバーが起動する
なお、略式で

rails s 

でもOK

もしエラーがでるのなら

vim Gemfile 

で設定ファイルを編集する

これで

rails s 

でサーバーを起動し

WEBrick::HTTPServer#start: pid=5181 port=3000

というようにでればOK

これは WEBrick というサーバーで
ポート3000番で起動している

なので
http://IPアドレス:3000
でアクセスできる

以下のように表示されればOK

rails

必要なものは
app
config
db
の内容

app の中に
Model
View
Controller
があるのでここにプログラムを書いていくことになる

Heroku の登録

Heroku の登録

https://www.heroku.com/
にアクセスし
SIGN UP FOR FREE
をクリックします

Screenshot from 2016-04-02 00:04:23

次に登録画面になります

First name には名前
Last name には苗字

Email にはメルアド

Pick your primary development language
は使用する開発言語なので
今回は ruby を選択します

入力ができたら
Create Free Account をクリックします

Screenshot from 2016-04-02 00:07:15

すると heroku からのメールにリンクがはられているので
これをクリックします

するとパスワード設定画面になるので
Password にパスワード
Retype password
に確認のためもう一度同じパスワードをいれ
Set pssword and log in
をクリックします

Screenshot from 2016-04-02 00:15:29

Help me get the most out of Heroku with occasional product updates, technical content and related benefit information. We won’t spam you, and you can unsubscribe at any time.

そのままチェックをいれておきました

これで登録完了となり、
Click here to proceed as メールアドレス
をクリックするとログインできます

Screenshot from 2016-04-02 00:22:37

Screenshot from 2016-04-02 00:26:16

ubuntu 14.04 に postgresq のインストール

ubuntu 14.04 に postgresq のインストール

sudo apt-get install postgresql

でインストールします

次に phpmyAdmin のような PGadmin3 のインストール

sudo apt-get install pgadmin3

次にpostgres ユーザのパスワードの設定

sudo passwd postgres

パスワードはセキュリティのため表示されません

次に postgresql の再起動

sudo /etc/init.d/postgresql restart

次にローカルホスト接続できるように
設定ファイルの変更

sudo vim /etc/postgresql/9.3/main/postgresql.conf

でファイルを開き編集

59行目の

#listen_addresses = 'localhost'         # what IP address(es) to listen on;

の行頭の#を削除します

ちなみにサーバーの設定ファイルでは# は
コメントアウトになります

sudo /etc/init.d/postgresql restart

で postgresql を再起動し設定を反映します

そして postgrsql ユーザの postgresql でのパスワードを変更します

ちなみに root でないのは PostgreSQL のセキュリティ仕様のため
Amazon Linux みたいに root で起動ができません

まず

su - postgres

で postgres ユーザに切り替えます

次に postgreSQL にログインしたいので

psql 

を実行

alter role postgres with password 'パスワード';

でパスワード設定

postgreSQL を抜けるには

\q

を実行します

これで postgreSQL のインストールは完了です

ubuntu 14.04 に ruby on rails 環境インストール

ubuntu 14.04 に ruby on rails 環境インストール

sudo apt-get update

でリポジトリアップデート

sudo apt-get install git build-essential libssl-dev libffi-dev

で必要な開発関連ツールのインストール

sudo apt-get install libxslt-dev libxml2-dev libsqlite3-dev nodejs libmysqld-dev libmysqlclient-dev mysql-server mysql-client

で必要なライブラリのインストール

次に ruby のインストール管理ツール rbenv をインストールするため
git で必要なものを取得

git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

次に rbenv コマンドを使いやすくするためパスを通します

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

設定を反映するため、ファイルの再読み込みをします

source .bash_profile

次にインストール可能なもののリストを表示します

rbenv install -l

とりあえず最新版は2.3.0 のようなので
これをインストールします

インストールは
rbenv install バージョン名
でできるので

 rbenv install 2.3.0

でインストールします

なお複数インストールしても
デフォルトで使うバージョンは
rbenv global
で指定できるので

rbenv global 2.3.0

で設定します

次にGem 管理のための bundler をインストールします

gem install bundler

次に rails をインストールします

gem install rails

これで ruby on rails のインストールができました

なお ruby のバージョン確認は

ruby -v

rails のバージョン確認は

rails -v

でできます