2016年12月7日水曜日

Node.js PM2をサーバー再起動後も自動起動するように登録

pm2_nodejs仮想サーバーがメンテナンスで再起動してもPM2が自動起動するように設定したときの覚書。

環境: CentOS 7.2.1511, Node.js 4.6.2, PM2 2.1.6

PM2はNode.js向けの高機能プロセスマネージャー。自動起動のスクリプトを自動生成してくれる機能がある。

$ pm2 startup

[PM2] You have to run this command as root. Execute the following command:
      sudo su -c "env PATH=$PATH:/home/node/.nvm/versions/node/v4.6.2/bin pm2 startup linux -u node --hp /home/node"

 

rootになって、言われた通りのコマンドを実行してみる
# sudo su -c "env PATH=$PATH:/home/node/.nvm/versions/node/v4.6.2/bin pm2 startup linux -u node --hp /home/node"

-bash: sudo: コマンドが見つかりません

 

sudoなしで実行
# su -c "env PATH=$PATH:/home/node/.nvm/versions/node/v4.6.2/bin pm2
startup linux -u node --hp /home/node"

bash: update-rc.d: コマンドが見つかりません

 

platformオプションをcentosに変更して実行
# su -c "env PATH=$PATH:/home/node/.nvm/versions/node/v4.6.2/bin pm2
startup centos -u node --hp /home/node"

[PM2] Done.

[PM2] Now you can type
$ pm2 save

 

nodeユーザーになって今のプロセスリストを保存
# su - node
# pm2 save

 

自動起動登録されているか確認
# chkconfig --list

スクリプト実体は/etc/init.d/に配置される。これをSysVが読み込んで実行される。

ちなみにCentOS7からはsystemdでサービス管理するようになったので、そちらで管理されているサービスを表示するにはsystemctlを使う。
# systemctl list-unit-files --state=enabled

 

SysVとsystemdの違いに関する参考サイト

 

Node.jsはnvmで管理しているのでNode.jsをアップデートしたら自動登録し直さないといけない。

 

< Related Posts >

2016年12月5日月曜日

Appcelerator Titaniumで作った「犬猫家族」アプリ

Appcelerator Titanium Advent Calendar 2016の5日目。今年作ったアプリの紹介。

仕事とは全く関係なく思い付いたので作ってみた。

 

スクリーンショット

Simulator Screen Shot Dec 5, 2016, 11.32.01 AM Simulator Screen Shot Dec 5, 2016, 11.32.11 AM Simulator Screen Shot Dec 5, 2016, 11.32.19 AM Simulator Screen Shot Dec 5, 2016, 11.32.29 AM Simulator Screen Shot Dec 5, 2016, 11.32.38 AM Simulator Screen Shot Dec 5, 2016, 11.32.51 AM

 

技術(Titanium)的な特徴

  • Titanium SDK 5.5.1.GA
  • Alloyは使ってない
  • ListViewを頑張ってる
  • サーバーAPIはNode.js
  • WordPressをフレームワーク的に使っている。画像の変換とかはNode.jsからPHP(WordPressのhook)をキックする

 

Titaniumで良かったこと

  • iOSとAndroidを同時開発出来るのは楽。特に修正するときに手間が省ける
  • 慣れればiOSシミュレータで開発して、最後にAndroid端末で確認するだけで終わる
  • サーバーはNode.jsで記述しているので全部JavaScriptで完結できる
    → 嘘です。サーバーサイドで一部PHP使ってます

 

このアプリの課題とか

  • Android 6で画像を使っているListViewの描画が遅い。Wi-Fiの環境だと許せるぐらいには速い。Android 4.0.3の端末の方がなぜかサクサク
    yagi_さんの記事を読んで、ここで紹介されているアプリはListViewでたくさん画像使っているのに早い。もうちょっと頑張れる気がしてきた
  • Galaxy S7 Edge(Android6だから?)で画像を選択すると、上下逆だったりauto rotateが正しく機能しない
  • プッシュ通知をオフにされると応募があっても気付かない。でもメール通知はしたくない
    → 応募があって返信しないとメール通知する仕組みする予定
  • 「自分の地域で検索したい」という要望あり
  • Instagramみたいに画像だけ敷き詰めるレイアウトの方が良かったかも

 

今後

  • Appcelerator Titaniumの将来に不安があり、Firebaseも活用したいのでAndroid開発はKotlinを使ったネイティブ開発に移行していく予定。
  • iOSは今後もTitaniumで開発予定。

 

< Related Posts >

2016年11月28日月曜日

法人クレジットカード作成。MFクラウド会計と連携

credit-card銀行に法人口座を作ったので、今まで個人のクレジットカードを使っていたのを法人のクレジットカードに変更しようと調べてみたときの覚書。

最大利用可能枠が300万円、年会費2000円のこのカードが良さそう。

とりあえず申請してみた。

 

10月27日ネットから申請。

申込後、11月2日(6日目)に自宅へ郵便物が届いた。

この間も審査状況は「ただいま審査中です」。

必要事項を記入する。履歴事項全部証明のコピーと運転免許証のコピーを添付する必要あり。

11月7日(11日目)に送付。

11月18日(22日目)ETCカードだけ届いた。

11月23日(27日目)クレジットカードが届いた。

 

eオリコに登録してMFクラウド会計から自動取得の連携サービスとして登録。

これでカードの明細をMFクラウド会計に取り込めるようになったので仕訳が楽になるはず。

 

< Related Posts >

Related Posts Plugin for WordPress, Blogger...

Blog Archives