satococoa's blog

主にサーバーサイド、Web 系エンジニアのブログです。Go, Ruby, React, GCP, ...etc.

2018-01-01から1年間の記事一覧

mysql クライアントのみをインストールした状態で mysql2 gem をビルドする

この記事の続きです。 satococoa.hatenablog.com よく考えると mysql サーバをローカルにインストールする必要はないので、以下のようにやってみました。 brew uninstall mysql brew install mysql-client # mysql との競合を避けるため /usr/local/opt/mysq…

Firebase Authentication の ID トークンを Ruby で検証する

ID トークンを確認する | Firebase にあるように、Fireabse Authentication によって発行された ID トークンを正しく検証することにより、そのユーザの user_id を確認することができます。 Firebase Admin SDK が提供されていればそれを使うことで簡単に検…

macOS Mojave にアップグレードしたら mysql2 gem のインストール時にエラーが発生した

手元の環境では High Sierra のときはこの辺の考慮をしなくてもインストールできていた気がするのですが、さっき新規に bundle install をしたら以下のようなエラーになってしまいました。 ld: library not found for -lssl clang: error: linker command fa…

Angular で作った SPA を Docker の nginx を使って動かす

このサイトにある手順をまるっと使わせていただきました。 medium.com 追加したのは以下の3ファイル .dockerignore node_modules nginx.conf server { listen 80; location / { root /usr/share/nginx/html; index index.html index.htm; try_files $uri $ur…

Kubernetes の CronJob で bundle update して PR 投げてくれるようにした

bundle update を定期的に実行し差分がある場合は pull request を投げる、というよくある仕組みを k8s の cronjob で実装しました。 clone ( or pull ) -> 何らかの処理を行う (ここでは bundle update) -> [差分があったら] -> commit & push -> Pull Requ…

複数の pod で並列に kubectl exec を実行する

こんな感じで OK kubectl get pods -l name=app -o jsonpath="{.items[*].metadata.name}" | xargs -n1 -P4 -I{} kubectl exec {} bin/rails r 'Rails.logger.info(Rails.env)' xargs の P オプションの値は最大プロセス数。 参考: JSONPath Support kuberne…