サーバーのOSをアップデート
Related posts
C/C++のソースコードを生成するツール
ソースをささっと書きたい、でも後で使うときに備えてそれなりの体裁に整えておきたい。そんなニーズを満たすべく、ソースコードを吐き出すツールを作っています。 https://github.com/vottie/codegen 使い方ですが、codegen.sh cって打つと、以下のような形でプロジェクト名とファイル名を入れてくださいって表示されます。 hello world的なものをやりたいなぁですと、 これでhelloってディレクトリができます。その中に入って見ると、以下のファイルが出来上がっているはずです。 私はMakefileを書くのは苦手です。コピペして作れば良いとは思うんですけど、さくっと書いて動かしたい時に、ニーズにあったMakefileを探すのが面倒だったり。ですので、Makefileを自動生成するツールを作ってみました。 上記のソースについては、execute()の中身を実装してmain.c側で呼び出してあげるように実装し、makeを実行すれば、mainという実行ファイルができると思います。
gunicornの設定
djangoで何か作って運用するための準備としてgunicornを使ってみた。 gunicorn トップページには簡単に動きまっせみたいなことを書いているが、3晩はかかった。仕事だとしたらば1日潰れたぐらい時間がかかった。 まずはvagrantで動いてるubuntu 14.04にインストール つづいてサンプルアプリの写経 ~/src/gunicorn/myapp/myapp.py 動かしてみると、おー動く。 でもブラウザからは動作はしない。vagrantのポートフォワードの設定をしてもダメ。webサーバ、うちの場合はnginxの設定も必要らしい。 gunicornのインストール | i2bsの日記 なんとなく真似てgunicornのグループを作成して、vagrantユーザを所属させてみたが、結局confの設定は正しく読めなかった。 nginxの設定もunixドメインソケットのupstreamの設定がキモっぽいがsite-available/defaultに書いてると、/var/log/nginx/error.logに以下のエラーが出てnginxが起動しない。 ググってみるとどうもバーチャルホストの設定が必要らしくconf.d/になんか書く必要があるとのこと。参考にさせてもらったサイトでもよくみるとそうなってたので、そのようにした。でもconf./dの設定とsites-availableの設定の関係性が分からなくなった。 confの設定がどうも効かないので、CLIから直接起動。アプリを書いたディレクトリで、以下を叩く。 今度はListeningのlogが変わった。 がしかし、http://127.0.0.1:18000/にアクセスすると、gunicornのアプリがエラーする。(18000はvagrantへのhttpアクセスのport forwardの設定port) “gunicorn type error not a byte”でググって、stackoverflowで解決。 gunicorn (Python3.4 and 3.3) sends in response only headers without data | stackoverflow 元のアプリがpython 3系だとダメらしい。以下のresponseとおぼしき1行を修正してブラウザからの動作は確認できた。 – return iter([data]) + return [bytes(data, ‘utf-8’)] 残すは設定ファイルからのgunicorn起動。 2015/10/05追記 設定ファイル書けた。たぶんファイルのパーミッションの問題で、daemon化ができていなかった。以下は動作が確認できたファイルで、logファイルは先に作成して、chmod 666した。 なお確認したソフトのバージョンは、以下。 python 3.4.3 nginx 1.4.6 gunicorn 19.3.0
Trackbacks and Pingbacks on this post
No trackbacks.
- TrackBack URL
Comments on this post