heroku でのアプリの更新とリリース

heroku でのアプリの更新とリリース

アプリを更新し heroku に更新してみます

まずは ローカルのディレクトリに移動します

cd heroku/mymemo/

次に view を変更します


 vim app/views/memos/index.html.erb 

でファイルを開き

<p>hello world</p>

を追記して保存

次に動作確認のため

rails s

で変更されているのを確認

heroku10

これで動作確認できたら heroku に反映させます

これは git で管理すればOKです

まず変更を登録します

git add .

次に commit して -m オプションでコメントをつけます

 git commit -m "add hello world"

そして push して heroku に送ります

git push heroku master 

これで ブラウザで heroku 側にアクセスしても
反映されているのがわかります

heroku11

なお heroku に git で送るときに
自動で設定してくれるのでとても楽です

実際には push するたびに heroku側で設定をしてくれていて
ruby の検出や Slug 作成
Dyno への展開が行われています

そして push するたびに
リリースというのが作られていて
リリース一覧は

 heroku releases

とすることで見ることができます

私の環境だと

=== shrouded-chamber-59024 Releases
v10  Deploy 5e71713        snowpoollovely@gmail.com  2016/04/23 07:20:19 +0900 (~ 5m ago)
v9   Attach HEROKU_POSTG…  snowpoollovely@gmail.com  2016/04/17 11:00:35 +0900
v8   Deploy 44eb01d        snowpoollovely@gmail.com  2016/04/17 10:57:12 +0900
v7   Attach HEROKU_POSTG…  snowpoollovely@gmail.com  2016/04/17 10:45:41 +0900
v6   Attach HEROKU_POSTG…  snowpoollovely@gmail.com  2016/04/17 10:19:29 +0900
v5   Deploy 0b51092        snowpoollovely@gmail.com  2016/04/17 10:14:30 +0900
v4   Attach DATABASE res…  snowpoollovely@gmail.com  2016/04/17 10:14:30 +0900
v3   Set LANG, RACK_ENV,…  snowpoollovely@gmail.com  2016/04/17 10:14:29 +0900
v2   Enable Logplex        snowpoollovely@gmail.com  2016/04/16 01:16:07 +0900
v1   Initial release       snowpoollovely@gmail.com  2016/04/16 01:16:07 +0900

となります

見方ですが
最初の v10 とかはバージョン番号

Deploy の後は git のcommit のハッシュ
となります

ちなみに、最大のメリットは
1つ前に戻したりできること

1つ前に戻すなら

heroku releases:rollback

とすると1つ前に戻ります

heroku12

ちなみにバージョン管理のgit を使っているので
v10 などバージョン指定で戻すことも可能です

heroku releases:rollback v10

というようにすれば、指定したバージョンに戻すことができます

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 にソースコードをプッシュできます

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

でできます

AWS バーチャルホスト設定 その2

AWS バーチャルホスト設定 その2

お名前.com でサブドメインの取得ができたので
次に
AWS での設定を行います

まず ssh でログインします

ssh -i 鍵ファイル名.pem ec2-user@パブリックDNS名

でアクセスします

もし、接続できないときには
セキュリティグループのアクセス可能なIPアドレスを確認
Y!mobile のような回線の場合
IPが変更されていてアクセスできない可能性があります

sshログインできたら
httpd.conf の編集をします

sudo su -

で root 権限で編集していきます

vim /etc/httpd/conf/httpd.conf 

で編集します

最終行に追記します


NameVirtualHost *:80
#元ドメイン
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName snowpool.info
</VirtualHost>

#追記ドメイン用
<VirtualHost *:80>
DocumentRoot /var/www/html/wp.snowpool.info
ServerName wp.snowpool.info
</VirtualHost>

として :wq で保存します

次に、追加ドメインのためのディレクトリを作成します

mkdir /var/www/html/wp.snowpool.info

ここへテストファイルをおいて、実際にみれるかテストします

 vim /var/www/html/wp.snowpool.info/index.html

でファイルを作成します

内容は

hello

としておきます

これで準備できたので apache を再起動します

/etc/init.d/httpd restart

これで
元のドメインでアクセスして
追加ドメインでアクセスできれば成功です

vh

vh2

次回は cloud9 からデータ移行のために phpmyadmin をインストールします

wordpress 公開準備(sql ファイルのエクスポート)

wordpress 公開準備(sql ファイルのエクスポート)

まず cloud9 で作成した wordpress のデータを
エクスポートします

これは

mysqldump DB名 > DB名.sql

で sql ファイルとして出力します

DB名は
wp-config.php に書かれているので

define('DB_NAME', 'DB名');

となっているところを探します

私の場合24行目あたりにありました

 mysqldump DB名 > wptheme.sql

としてsql ファイルに書き出します

次に cloud9 でできたwptheme.sql を右クリックし
Download を選択
これで sql ファイルをダウンロードできます

次回は お名前.com でサブドメインを取得します

Mac に Google Drive インストール

Mac に Google Drive インストール

Android 関連を使うのなら
Google アカウントは持っているし
Gmail などでも使うことが多いので
今回は Google Drive を  Mac にいれます

今後 Ubuntu でも使えるようにする予定です

まず
https://tools.google.com/dlpage/drive?hl=ja
から

Mac用を選んでダウンロード

スクリーンショット 2016-01-24 17.28.59

つぎに
ダウンロードしたファイルを
ダブルクリックすると
ドラッグ&ドロップするようにでるので
ドラッグ&ドロップ

スクリーンショット 2016-01-24 17.40.50

その後 Applications アイコンをクリックすると
一覧がでるので
google Drive をクリック

スクリーンショット 2016-01-24 17.43.00

すると Google Drive の設定開始画面になるので
開始するをクリック

スクリーンショット 2016-01-24 17.43.54

つぎにログイン画面になるので
Google アカウントのパスワードを入力

つぎに解説がでるので
そのままつぎへをクリック

スクリーンショット 2016-01-24 17.46.49

つぎにスマホやタブレットのアプリの紹介がでるけど
次へをクリック

スクリーンショット 2016-01-24 17.47.04

そして他のユーザとの共有の解説がでるけど
次へをクリック

スクリーンショット 2016-01-24 17.48.10

すると設定完了画面になるので
完了をクリックすれば設定完了です

スクリーンショット 2016-01-24 17.48.28

ansible で ubuntu の設定(初期設定)

ansible で ubuntu の設定(初期設定)

最近、ノートパソコンでログインできなくなったため
今度開発環境などを設定するときに
効率的にできるように
Ansible で設定するようにします

まずはテストとして
Virtualbox で Ubuntu 14.04 6bit をインストール
これに実験していきます
ansible install

まずは Ansible をインストールするため

sudo apt-add-repository ppa:rquillo/ansible
sudo apt-get update
sudo apt-get install ansible

でインストール

Ansibleを使うには
インベントリファイル
対象ホストをまとめたもの

playbook
taskとよばれる操作をまとめたもの

ansible.cfg
Ansible の設定を記述したもの

この3つが必要

インベントリファイルは
ini形式で記述する

このファイル形式については
INIファイルの基礎知識

を参考に
コメントアウトは
行頭に ; で行うことになる

インベントリファイルができればとりあえずは実行はできる

ファイルをまとめてわかりやすくするため

mkdir ansible_test
cd ansible_test/

として、ファイルの置き場を作成しておきます

次に実験で Virtualbox にインストールした
仮想マシンへ行うけど
インストールしたばかりの ubuntu では
ssh での接続ができないため
virtualbox 側の ubuntu にログインし
端末を ctrl + Alt + t で起動し

sudo apt-get install openssh-server

で ssh 接続できるようにする

次にネットワーク設定を
NATから
ブリッジアダプターに変更

ansible

次に

ifconfig

でIPアドレスを確認

ansible2

次に ssh で実際に接続できるかを確認

ユーザ名が同じなら

ssh 192.168.128.178

というようにIPアドレスをいれれば
パスワードを聞かれるので、合っていれば接続できる

The authenticity of host '192.168.128.178 (192.168.128.178)' can't be established.
ECDSA key fingerprint is ce:92:27:fe:a3:9b:3b:bb:1d:df:89:7e:45:ae:e4:00.
Are you sure you want to continue connecting (yes/no)? 

と聞かれるので yes を入力

これでログインできれば成功なので
ctrl + d でログアウト

ssh での接続ができるのを確認できたので
公開鍵認証でインストールできるようにします

ssh-keygen -t rsa

を実行すると

Generating public/private rsa key pair.
Enter file in which to save the key (/home/snowpool/.ssh/id_rsa): 

となりファイル名を求められます
そのままだと id_rsa になります

今回は ansibleにします

次に

Enter passphrase (empty for no passphrase): 

となりパスワードを設定するのですが
空欄でもOKです
とりあえずパスワードは練習ということでなしです

すると

Enter same passphrase again: 

となり。確認のためもう一回いれてと言われますので
もう一回入力します

これで
ansible
ansible.pub
の2つのファイルが作成されます

この.pub がついている方を
仮想マシンに転送します

その前に、転送するときにIPを毎回うつのは面倒で
間違えやすいので

vim ~/.ssh/config

で設定ファイルを作成し

Host develop
 HostName 192.168.128.178

とすることで
IPアドレスではなく、develop でアクセスできるようにします

ssh-copy-id develop

とするとコピーできるのですが
このときにログインパスワードを求められます

/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 2 key(s) remain to be installed -- if you are prompted now it is to install the new keys
snowpool@192.168.128.178's password: 

これで成功するとログインするときに

ssh develop

とするだけでパスワードなしでログインができるようになります

ログインできたら
ctrl + d でログアウトしておきます

次に接続に必要なインベントリファイルを作成します

vim hosts

でインベントリファイルを作成します

[develop]
;install ip address
192.168.128.178

というように
[グループ名]
というようにわけることができます

まずは実験で、システムの稼働時間を表示する
uptime コマンドを実行

uptime コマンドについては
http://cmd.misty.ne.jp/refference/uptime.html
を参考に

ansible all -i hosts -m command -a "uptime"

とすると
対象ファイル、今回なら
ubuntu 14.04 で uptime コマンドが
実行されます

-i hosts というようにインベントリファイルを
指定しないと
No hosts matched
と表示されるので注意

成功すると文字が緑色で表示されます

ansible3

結婚式関連で調べたことメモ

結婚式関連で調べたことメモ

今回、結婚式も終わりましたので
いろいろわからなくて調べたこともメモしておきます

今回、私達はいろいろとペーパーアイテムを自作したり
プリンターで印刷するなどしたのですが
そのときに、
プランナーさんにも確認をしていただきました

招待状そのものは、
ネットで印刷するものを注文し、パソコンで
テンプレを編集しました

ちなみに使用したのは piary の招待状です
購入するとテンプレがダウンロードできます

http://www.piary.jp/paper/written_invitation/?pg=1#items

なお、招待状に切手をはるのですが
これは一般的には慶事用切手になります

これは郵便局での購入となります

年配のかたを招待するのでなければ
そこまでしなくても問題なさそうですが
私達の場合、親族がほとんどだったため
これになりました

封筒の重さにもよりますが、1枚82円ぐらいです

慶事用だけじゃない!結婚式の招待状に貼る切手のあれこれ


画像が掲載されていました

次に招待状の入れ方です

入れ方と切手の貼り方にもマナーがあり
これについても調べて、最後にプランナーさんに
確認をしていただきました

招待状を封筒に入れるときには、
見ていただきたいものを上にします

なので
付箋
地図
返信はがき
そして招待状
というかんじです

なお、地図に関しては google map などを
プリンターで印刷するとお手軽にできます

このあたりのマナーの詳しいことは
これで完ペキ♪招待状のマナー【封筒編】

に掲載されています

次に、対面式を行う場合のリスト作成です
対面式は親戚の紹介をするものです

リストをつくることになったのですが
これも順番がありました

私達の場合は


兄弟
父方の親族
母方の親族
という順番でリストを作成しました

あとは、紹介するときに
両家の父が行う
or
各個人で紹介してもらう
ということになりますが
今回は 両家の父が行う
ということになりました

このあたりは、両家との相談になります

意外と知らない?親族紹介の基本マナー&ご挨拶のコツ

に事例が載っていますので
もし、どうしようかお悩みの場合は参考に

そして、花嫁から両親に向けての手紙ですが
これも参考文例があります
手紙などの文章を書くときに出だしがかけると
その後はスムーズに書けます

【文例集】結婚式 花嫁の手紙 感動の文例まとめ

この他にもメモできるものがあれば投稿していく予定です

その前に入籍や引っ越し関連もありましたので
こちらについても投稿していこうと思います