Docker | iii threetreeslight

July 27, 2018

Our first Repro Tech Meetup!

やっと、やっとです。 cookpadなど名だたる会社のように、自社tech meetupを開催することができました 🎉 全体では40名近い方にも参加いただき、内容的にも盛り上がり、個人的にはとても楽しかったです :sparks Whats Repro Tech Meetup Repro Tech Meetupは、スタートアップにおける技術領域での失敗を少しでも防ぐようノウハウを共有することを目的とするミートアップです。 Reproで過去選択した技術の失敗談や、それをどうやって盛り返してきたのか共有 Reproの今を支える技術や知見を共有 ゲストを呼びReproで利用する・している技術について学ぶ Repro は、5,000以上の世界中にあるアプリに利用されるマーケティングオートメーションツールを提供する会社です。 数千万DAUのアクセスや行動ログを基にした柔軟な分析ワークロードを実現し、毎日億を超えるpush配信などのマーケティング施策の実施を支援しています。 Prepare 受付にはReproグッツも!四角いのはメモ帳です 👀 お酒を飲みながら聞ける! 人もいっぱい! 今回のテーマはDocker あの docker によるアプリケーション開発環境構築ガイドを著者の櫻井さんにも登壇いただきました! 当日のTwitterの様子は以下を御覧ください togetter - Repro Tech Meetup #1 Docker まとめ RettyにおけるDocker活用のこれまでとこれから by 櫻井洋一郎 お酒飲んでるところを映してしまってすいません 😅 Rettyさんは2014年から機械学習基盤にdockerを使っているのすごい。 ReproとECSの今と昔 by kei_q ECSとの戦い。ECS進化してきたなーとしみじみ感じます。 個人サービスをFargateに移行したよ by hatappi 昔の自分に伝えたい容量回復のためのDockerの仕組み by ksk1030 ECS運用ノウハウ by naomichi => https://github.com/metaps/genova systemd-nspawnは便利らしい by threetreeslight 時間が余ったので私もLT打ち込んだっ!当日にっ!!! 次回も がんばっていきますので、よければぜひご参加ください 🎉 ... Read more

July 7, 2018

Bypass https redirect by nginx on local

現在のblogでは以下のようなredirect処理を追加しています。 # redirect http to https if ($http_x_forwarded_proto = "http") { rewrite ^/(.*)$ https://$host/$1 redirect; } これは以下を目的としています。 鍵をnginxで管理せず、GCPのloadbalancerで管理する。 また、https通信の複合処理はGCPで行い、そこから後ろはhttpでアクセスしたい。 このとき、blogはhttps通信しか許可しない。 そのため、ユーザーのrequest時のprotocolがhttpであるかどうかnginxで判断し、httpの場合はhttpsにredirectする localでわざわざ証明書を準備して作業するのもとても面倒。つまり _人人人人人人人_ > localで邪魔 <  ̄Y^Y^Y^Y^Y^Y^Y^ ̄ bypass redirect ideas bypassするには以下のような方法がわかりやすいのですが、それぞれに問題があります。 local用のconf + dockerfileを分ける 管理が手間ですし、本番設定ファイルとの乖離が発生するリスクが十二分にあります 環境変数を使ってredirectしないよう処理を分岐する nginxのperl moduleもしくはlua moduleを利用しなければnginxで環境変数を利用することができない そういえば自社でやっている方法やれば良いですね、環境変数とentrykitを利用してconfを制御するようにします。 templating by entrykit entrykit は以下のようなツールです。 Entrypoint tools for elegant containers. Entrykit takes common tasks you might put in an entrypoint start script and lets you quickly set them up in your Dockerfile. ... Read more

April 29, 2018

Dockerize hugo on local

blogをtumblerからhugo に移す。 それにともない、まずはlocal開発環境のdockerize。 ちょっとはまったところ そりゃそうだよねってところなのですが dinghy(docker-machine)経由でアクセスするので、assetsの表示を直す hugoの組み込みサーバーはlocalhostをdefaultでbindしている ここらへんはbaseURLとbindを指定することで解決。 # docker-compose.ymlversion:"3"services:blog:build:context:.volumes:-.:/appports:-"1313:1313"command:["hugo","server","--baseURL=http://${DOCKER_HOST_IP}:1313","--bind=0.0.0.0"] watcherが期待通り動いていないので、そこは後日