日記

日々のことと、Python/Django/PHP/Laravel/nodejs などソフトウェア開発のことを書き綴ります

pip を閉域環境で利用する

はじめに 今回は諸般の事情で pip というか、Python 環境を外部通信が不可能な環境で用意する必要が出てきたので、やり方を調べた時の備忘録です。 環境構築の流れ 作業順としては次のような流れです。 外部通信可能な環境で、pypi からパッケージを取得する…

フリーランスになって、2年が過ぎた

確定申告が終わり、フリーランス 2年目の雑務も完全終了したので、振り返りエントリです。 過去の退職エントリと去年の振り返りはこちら。 お金の話 まずはお金の話から。 収入とか 今年の営業収益は休業時期のあった前年を危なげなく上回りました。 これも…

uWSGi で Django Channels を動かす

はじめに ちょっとしたお仕事で Django Channels を uWSGI 上で動かそうとしたら、色々と uWSGI 以外のプロセスも起動していく必要がありました。 ぐぐっても 開発環境や使い方の説明はあるものの、デプロイ時の How to があまり見つからなかったので備忘的…

ansible で systemd 配下のサービスを扱う

ansible で管理する systemd サービス ubuntu 16.04 になってから、サービス管理は systemd に変わって、ansible の service モジュールだけでは管理できなくなりました。 どう書けばいいのか忘れがちなので備忘的に記事を残します。 ansible 2.1 以前 uWSGI…

let's encrypt で複数ホスト名対応な証明書を作る

let’s encrypt で複数ホスト名対応な証明書を作る タイトル通りですが、割と簡単に複数のホスト名に対応した証明書が取得できるので、やってみました。 今回は ansible playbook のおまけ付きです。 let’s encrypt の困った問題 let’s encrypt ではワイルド…

正式版になった let's encrypt を試す

let's encrypt 正式版がリリースされました。 2016 年 4 月に let's encrypt は beta が取れて正式版となりました。(今更感がありますが…) クライアントの letsecnrypt コマンドも 0.5.0 になり、さらに certbot と名前を変えています。 そんなわけでサラ…

フリーランスになって、1年が過ぎた

去年、会社を辞めて1年以上が過ぎ、確定申告も無事に終わったのでフリーランスの生活の振り返りと近況をまとめます。 tnamao.hatenablog.com 退職、休暇、フリーランス活動の経緯 前述の退職エントリを書いたけど、2013年終わりから2014年に掛けて体調が悪か…

let's encrypt の証明書発行モードを変更してみた

let's encrypt の証明書更新 この前の記事で、 let's encrypt の証明書更新を試しました。 しかし、standalone モードでの証明書の更新だったため、本来ホスティングしている Web サーバを止める必要があったりとイケてない状態でした。 証明書を Web サーバ…

let's encrypt の revoke とドメイン管理

前回の続きで、もう少し let's encrypt tnamao.hatenablog.com 証明書の破棄 前回のエントリで作成した証明書の破棄を試してみたいと思います。 証明書を破棄するときも、letsencrypt-auto コマンドを使います。 破棄する証明書がある $ sudo supervisorctl …

let's encrypt の証明書を作ってみた

let's encrypt ってなに? HTTPS 通信に必要な証明書を無料かつ、半自動で取得できる仕組みです。 無料で本当に使えるの? ちゃんと使えます。 ただ、古いブラウザやガラケー()のサイトに使うのは時は注意が要ります。 特にガラケーは引っかかると思います…

Windows 10 のタブレット (ASUS TransBook T90 Chi) を買ってみた

ASUS TransBook T90 Chi ってなに? 8.9 インチの Windows 10 のタブレット PC です。タブレットと言いつつ、キーボード分離型の 2in1 ですけどね。 CPU に Atom Z3775 (1.46GHz up to 2.39GHz) 、メモリは 2GB 、ストレージは 64GB (eMMC) が基本スペックで…

Anzu と Momo を使って Raspberry Pi 2 から映像を配信をしてみた

Anzu と Momo Anzu と Momo は時雨堂という会社から発表されたサービスで、この二つを組み合わせるとラズパイから映像配信が出来てしまうらしい。 と言うことでやってみた。2016 年 2 月 15 日までは無料ですし。 Raspberry Pi 2 の構成 OS: RASPBIAN JESSIE…

Otto 入門記 その2

前回で、開発環境の構築とアプリケーションのビルドとデプロイが出来たので続いては、本番インフラの構築です。 教材は、このあたり ottoproject.io Infrastructure Otto はインフラ構築も自動的に行います。 Otto で標準サポートされているのは、AWS 上での…

otto 入門記 その1

実際に otto を動かしながら入門してみたいと思います。 教材はこれ ottoproject.io インストール Otto はバイナリが配られているので、Mac / Linux では zip を展開して出来る otto ファイルを適当なパスの通っている場所に置くだけ。 El Capitan の場合は …

Otto イントロダクション

まずは ↑の意訳っぽくなっちゃうけど書いていきます。 Otto って何? クラウドプラットフォーム上のアプリケーションがどうやって開発・デプロイするのか Otto は単一の特定のワークフローを持って全てをコントロールして、チームに最大限の生産性を提供しま…

Ansible と導入障壁などの悩み

説明とか導入とかを説明するときに、うーん。と思うことがあったので、つらつら書いていきます。取り留めの無い話になっちゃったので、時間を捨てても良い人だけ読んでね。 Ansible の導入方法や、チュートリアルなどについては書いてません。下記の記事とか…

Laravel 5.1 入門記 その15 (Eloquent リレーション編)

今回は何気なくすっ飛ばしていた、Eloquent のリレーション定義の回です。 オフィシャルドキュメントではこちら。 Eloquent: Relationships - Laravel - The PHP Framework For Web Artisans リレーションの種類 Laravel で用意されているリレーション定義は…

Laravel 5.1 入門記 その14(Form Request とメッセージのカスタマイズ編)

今回は Eloquent からはちょっと離れて、Request とメッセージリソースのことを。 Validation - Laravel - The PHP Framework For Web Artisans Localization - Laravel - The PHP Framework For Web Artisans オフィシャルドキュメント的には、明確にココと…

Laravel 5.1 入門記 その13 (トランザクション編)

今回は簡単に。トランザクション制御です。 Database: Getting Started - Laravel - The PHP Framework For Web Artisans Database Transactions Laravel というか PHP の場合?宣言的にトランザクション制御を行う簡単な方法も無いため、Closure スタイルの…

Laravel 5.1 入門記 その12 (Eloquent 論理削除編)

Laravel 5.1 入門記 その10 (Eloquent SELECT 編) - 日記 Laravel 5.1 入門記 その11 (Eloquent 更新編) - 日記 Eloquent がサポートしている論理削除 (Soft Deletes) についてです。 今回も教材はこちら。 Eloquent: Getting Started - Laravel - The PHP F…

Laravel 5.1 入門記 その11 (Eloquent 更新編)

久々なので立て続けに。 前回同様に教材はこちら。 Eloquent: Getting Started - Laravel - The PHP Framework For Web Artisans 今回は簡単な内容なので、さくさくと。 データの新規登録と更新 前回使っていた Flight クラスを使ってデータを新規登録する例…

Laravel 5.1 入門記 その10 (Eloquent SELECT 編)

超久々に書きます。 Eloquent: Getting Started - Laravel - The PHP Framework For Web Artisans 題材はこれ。 Eloquent Eloquent は Laravel の OR Mapper で、Rails ActiveRecord の PHP 版みたいな位置づけで、モデルがデータベースのテーブルに 1 対 1 …

Laravel 5.1 入門記 その9(Blade Templates 編)

今回は Blade Templates に入ります。 Blade Templates - Laravel - The PHP Framework For Web Artisans ちらちらサンプル的なものが見えてたので、簡単なシンタックスシュガーは飛ばしていきたいところ。 Introduction Blade テンプレートファイルは resou…

Laravel 5.1 入門記 その8(Views 編)

今回は Views です。 Views - Laravel - The PHP Framework For Web Artisans Basic Usage やっとテンプレートの話に突入。 コントローラからプレゼンテーションロジックを分離するために view を使います。 view は resources/views に配置します。では早速…

Laravel 5.1 入門記 その7(Response 編)

では Responses に入門します。 HTTP Responses - Laravel - The PHP Framework For Web Artisans Basic Responses Laravel でルーティングに設定された action (Controller のメソッドや closure) は、文字列か、Illuminate\Http\Response を返すようになっ…

Laravel 5.1 入門記 その6(Request 編)

今回は Requests のセクションを進めます。 HTTP Requests - Laravel - The PHP Framework For Web Artisans Accessing The Request 前回出て来た内容がそのままでした。Request クラスはコンテナから設定され、Illuminate\Http\Request を type-hint として…

Laravel 5.1 入門記 その5(Controller 編)

今回はコントローラ。なんか基盤部分の話から一個レイヤーが上がった感じ。 laravel.com Introduction 単一の routes.php ファイルにロジックを書くわけでは無く、Controller クラスに処理を分解して委譲できる。一般的には Controller クラスは app/Http/Co…

Laravel 5.1 入門記 その4(Middleware 編)

今回は middleware について。 laravel.com Introduction middleware はアプリケーションにリクエストが届く手前でフィルタリングするような処理を実装できるとのこと。例えば認証とか、ロギングとか…。 前回の CSRF Protection で出て来た CSRF トークンを…

Laravel 5.1 入門記 その3(URL Routing 編)

Routing から再開。 HTTP Routing - Laravel - The PHP Framework For Web Artisans Basic Routing URL のルーティングは、 app/Http/routes.php に書いていくらしい。この route.php はApp\Providers\RouteServiceProvider が読み込むらしい。よくわかんな…

Laravel 5.1 入門記 その2(Config 編)

laravel.com このページの Environment Configuration から再開。 Environment configuration 実行環境によって、設定値を変えたいことがある場合は、DotEnv という仕組みで簡単に変えられるらしい。 Laravel Create-Project したときに生成された .env.exam…