まーぽんって誰がつけたの?

iOS→Scala→インフラなおじさん技術メモ

AWS Route53を使ってDNS-01でLet's Encryptの証明書を取得する

DNS-01方式 HTTPを利用して認証する場合に、IP制限や社内のみの通信などの制限をしている環境においてはLet's Encrypt側からの通信が届かないので認証できません。そこでDNSのTXTレコードで認証するDNS-01のタイプがあります。 こちらのサイトの説明がわかり…

Terraformのoutputで空になるかもしれないlistでindexで値を取得したいときのハック

true or falseで作られないかもしれないresourceの値を取得したい 例えばこのようにneed_instanceみたいなBooleanで作るか作らないかを決めるみたいなresourceがあったときに variable "need_instance" { default = false } resource "aws_instance" "hoge" …

Helmのchartのtemplateではまったところ

Helm とは helm.sh templateで書いてるresourceが作られなかった原因 {{- end -}}の-がなんなのかよくわからなかった trimの話だった golangのtemplateの話 https://docs.helm.sh/chart_template_guide/#controlling-whitespace これがわかりやすい rangeを…

re:Inventでコネクテッドカーのworkshop受けてきた

AWS

今流行りのコネクテッドカー https://recruit-mp.qiita.com/_mpon/items/cc5a957f029c3902ddcb と同じようなworkshopというやつで、Deep Dive into the Connected Vehicle Reference Architectureというやつも受けた。 これも、名前につられてノコノコと参加…

re:Inventでゲノム解析のワークショップ受けてきた

AWS re:Inventでのworkshopとは? 2時間ぐらい使って実際にAWS上でなんらかの処理をするやつです。 今回、ぼくがやったのは、High-Throughput Genomics on AWSという、 ゲノム解析をAWS上でやるというやつでした。なんかECSって書いてあったからノコノコと参…

えっ、nginxって$HOGEで環境変数読めないの??

人のコード見てわかった気になっていた 社内の他のインフラエンジニアが作ったnginxのDockerfileなどを見て、環境変数を読み込んでるっぽいらしい記述を横目で見ていたのでnginx.conf上で$HOGEとか書いておけばなんとなく環境変数って読めるんだろうって思っ…

WordpressをAmazon ECSで冗長化する

wordpressを動かすには何が必要か まずwordpressを動かすために何が必要かを整理すると、wordpressはMySQLとphpが動く環境が必要です。 なので本当に必要なものはDBサーバーとWebサーバーだけなんだけど、実際の本番運用してくとしたら画像のキャッシュとかD…

雑にテキストファイルを暗号化する

ssh公開鍵でファイルを暗号化する zip付きパスワードみたいの作るのがなんかmacだと面倒? なんかソフト入れないといけないとかなんか面倒なので会社で行われていたやつをメモしておく。 GitHubの公開鍵をとってきて暗号化 実はGitHubの公開鍵は全世界に公開…

dockerを何かを生成したり実行したりするツールとして使うという選択肢

dockerはサーバー動かすやつでしょ? dockerといえばサーバーみたいなものに使うものだと思っていました。転職してきた当時、こんな風に使えるんや!と自分の中でパラダイムシフトが起きたのを覚えています(大袈裟) cloudfrontの署名URLを作るperlのスクリ…

iTerm2を使ってる人限定だけどHTTPieとimgcatを使って画像を確認する方法

cli

リクエストにカスタムヘッダーを入れて画像を表示したい chormeでurl打ち込んで画像表示したいんだけど、そのときにカスタムヘッダーを入れたい。 そういうChrome拡張入れてもいいんだけど、なんか評価が高いやつとかデファクトっぽいやつがぱっと見つからな…

scrapboxが日々開発するときの思考の整理にすごくよい

scrapboxとは? 知らない人もいるかもしれないので一応前置き。 scrapboxはなんか共同編集できるwikiみたいなサービス。 Gyazo作ったところが作ってる。 scrapbox.io scrapboxを使うとラバーダッキングができる ラバーダッキングとは 開発中にどうしようもな…

terraformが0.10になってからproviderがpluginで取り込むようになってた

providerごとにrepositoryが分裂した https://www.hashicorp.com/blog/upcoming-provider-changes-in-terraform-0-10 0.9系まではhashicor/terraformで全てのprovider(AWSやGCPやいろんなもの)を管理してた。なのでそこに全ての要望やバグ報告がくるのでis…

Jenkinsではジョブを並列実行すると`@`がついたworkspaceが複数作成されるので容量に気をつけよう

Jenkinsが頻繁にdisk fullになる ビルドの破棄の設定などもしているんだけど、workspaceがすぐに肥大化する問題が起きていた。あるジョブのworkspace配下に@がついたディレクトリがたくさんできてしまっていることは分かっていたんだが、消してもたまに復活…

sentryでslackに通知するときにサーバー名とかを出すようにする設定方法がさすがだった

Sentryデフォルトだとサーバー名がスレッド番号みたいなやつ confで切り替えたりマイクロサービスっぽい感じでやってると、どのサービスか分からないからこれじゃ困る。かといって、それごとにproject作ってSENTRY_DSNを変えるのもめんどうだなぁと。 そこで…

Jenkinsfileですごく雑な承認フローそこそこ簡単に入れられた

ビルトインの機能でできる pipeline input step という機能を利用したら簡単にできました。とりあえずフローがどんな感じかで流れてくか紹介。 まずはジョブを普通に実行します ジョブを実行する人はいつも通りです するとslackに通知がきます これはリンク…