selmertsxの素振り日記

ひたすら日々の素振り内容を書き続けるだけの日記

Minikube Tutorial をまるっとやる

最初に このドキュメントは、このチュートリアルをまるっとやったことの記録。 kubernetes.io まとめ minikubeはlocalのimageを簡単に参照可能である minikubeが具体的にどこからどこまで担保してくれてるのかよく分かってない。 kubectl はcontextを切り替…

CloudSQL をRailsで使ってみる

モチベーション 今、個人で作ってるプロダクトを試しに GKEで動かしてみたい GCPだと、RDBはCloudSQLを利用した方が良さそう GKEの前に、CloudSQLを触ってみる 今日の学び CloudSQLは、Globalからアクセス可能であるが、IPのホワイトリストかProxyを利用する…

GCPエンタープライズ設計ガイドの読書メモ

はじめに 業務でGCPの一部を利用することになったため、概要を把握するためにこれをサラッと読んだ。 この本はGCPの様々な機能に関する概要をまとめたもので、これを読むだけでGCPがガンガン使えるようになるものではない。 あくまでGCP全体の概要を把握する…

KubernetesとGKEの学習

最初に この記事は、下記の書籍を読んだ上で自分の理解を整理するためにまとめたものです。 マルチホストでDockerを動かそう 単一ホストでサービスやってると、そのホストが落ちたらアウト マルチホストにして可用性と拡張性をあげる マルチホスト環境でコン…

Local環境のアプリケーションに対してAzure ADでOpenID Connectの認証をしてみる (その2)

TL;DR Azure ADでOpenID Connectの認証ができるか確認をした 確認環境は森岡がテスト用に作ったアプリケーション 上記環境はLocal環境で動いていて、Dockerで構成されている lua-resty-openidcを使ってnginxレイヤーだけで認証ができた まだ本番への反映をし…

lua-nginx-moduleをdockerで動かす

TL;DR imageの指定方法は、下記のフォーマット openresty/openresty:<openresty-version>-<image-version>-<flavor> flavorとはosのことでcentos, alpine などが入る 今回はこんな感じになった openresty/openresty:1.13.6.2-0-centos 上記方法でイメージを作れば、すぐにluaを実行可能 github.com 設定</flavor></image-version></openresty-version>…

Local環境のアプリケーションに対してAzure ADでOpenID Connectの認証をしてみる (その1)

Motivation Azure ADをIDaaSとして、社内サービスと連携したい。 弊社の社内サービスはPHP、Java、Rubyと多種多様な言語で書かれており、 またインフラもGCP,AWSと利用されているので、 それらすべてで動くようにnginxレイヤーでIDaaS連携をするようにする必…

OpenID Connectまとめ

概要 OpenID Connectは認証用のプロトコルである。 認可フローはOAuth 2.0そのままで、属性情報も渡せるようになる。 OpenID Connectを理解する上で、必要な用語は下記の通りある。 OpenID Provider: ユーザーの認証を行う機能を持つ Relying Party ( Client…

G SuiteをAWSのIDaaSとして使ってみたけど個人的にはイマイチだった

概要 G Suiteには Cloud Identity という IDaaSのサービスがあります。 G Suiteをすでに利用しているなら、こいつをIDaaSとして使えれば低コストでいけます。 なので、ちょっと試してみました。僕の認識不足な部分でイマイチな結論だしている部分があったら…

Rubyで型チェックをしてくれるsteepを試してみた

TL;DR RubyKaigiで型チェックをしてくれるgemが発表されていた http://rubykaigi.org/2018/presentations/soutaro.html#jun01 gem: https://github.com/soutaro/steep おもしろそうなので使ってみた エディタに組み込まれたらもう普通に使えそうな気がする …

【雑メモ】AWS CloudTrailメモ

CloudTrailとは AWSのユーザー、ロールによって実行されたアクションを記録するもの。 AWSマネジメントコンソール、AWS CLI、AWS SDKで実行された全てのアクションが記録される。 ログはS3に記録され、SSEを使用して暗号化される。 記録するデータには大きく…

AWS Fintech リファレンスガイドを読んで色々調べた

概要 AWSにおけるセキュリティ対策周りがまとまった資料がある。 FINTECH - アマゾン ウェブ サービス (AWS) この資料を読んで、いまいち分からなかったサービスの概要を調べてまとめてみた。 AWS FinTechガイドラインで出てきた機能一覧 AWS Organization A…

自プロダクトのRailsコーディング規約

参考図書 みんなでコーディングする上で、共通知識とする書籍を決める。 リーダブルコード Object Oriented Programing in Ruby Perfect Ruby Effective Ruby Service Objectsは使わない 理由としては、チームみんなで理解してやってくには難易度が高すぎる…

GitHubで自分が作ったPRを追うためにTrailerが便利だった

モチベーション GitHub上で、自分が管理していないリポジトリにPR投げると、その後どうなってるのか追い忘れることがあった。相手にとっても迷惑かなって思ったので、なんとかしたい。 結果 自分が作ったPRが見れる。便利 設定方法 1. Download https://ptso…

Azure ADでDatadog(Connectorなし)のSSO設定を行う

最初に Azure ADに DatadogのSSOを設定をしたい。 けれども、Datadog公式のドキュメントは2016年製で、微妙に設定内容が異なる。 https://help.datadoghq.com/hc/en-us/articles/216980686-How-do-I-configure-Azure-AD-as-a-SAML-IdP- なので、他のドキュメ…

技術書展4に参加しました

技術書展にて、本を出す側で参加させていただきました。 techbookfest.org TypeScriptを使って、AWS Lambdaを書く際の注意点などを記載しています。 実は、個人的に作っていたAWS Lambda製のchatbotについて記載したかったのですが、プライベートの諸々の予…

普通のLinuxプログラミング勉強会 9章 Linuxのディレクトリ構造

9.1 基本的な構造 ディレクトリツリーの標準規格であるFHS(The Filesystem Hierarchy Standard)に基づいて説明する /: ルートディレクトリ /bin: ブートするときに必要なコマンド (bash, ps, cp) /sbin: ブート時に必要な管理者用コマンド (mount, reboot, i…

「クラウドセキュリティ & プライバシー」読書メモ

目的 クラウド時代におけるIAMについて考える。 1章 クラウドコンピューティングの進化 産業時代、組織は電力を自給する必要があった。 電化によって、組織は電力を自給する必要がなくなり、 必要なエネルギーを必要なときに、必要な分だけ調達することが可…

JSとかRailsのログをWebPに変換してみた

概要 第4回SpeeeKaigiで、発表した資料です。 JSコードをWebPに変換してみました。 発表資料 speakerdeck.com コード github.com 参考資料 WebPの圧縮アルゴリズム Compression Techniques | WebP | Google Developers

「成長する企業はなぜSSOを導入するのか」を読んだ

所感 SSOについて、必要性と実現方法の概要を説明している本です。SSOって何?って人がいたら、エンジニア・ディレクター問わず読んでおくと良さそうです。 Single Sign-Onとは 各種サービスへのアクセスを一つにとりまとめるもの。 before 社内で利用される…

AWS Startup Daysでちょっとお話ししてきました

3/12 日のAWS Startup Daysというイベントでちょっとお話しさせていただきました。 aws.amazon.com お話しさせて頂いた内容は Serverlessで作るchatbot。 弊社SpeeeにおけるServerlessの事例と一緒にお話しさせていただきました。 github.com 発表資料はこち…

LocalでDynamoDBを起動する

モチベーション aws lambdaの開発において、開発効率の向上のためにlocalで動作が確認できるようにしたい。 そのためには、localでDynamoDBが動くようにしたい。ここでは、そのために必要な方法について記述する。 DynamoDBの起動 DynamoDB ローカル (ダウン…

mongoDBでテーブル作成、アイテム作成、アイテム取得をやってみる

モチベーション GitHub - selmertsx/serverless-prpolice 自分が作っているサービスでmongoDBを触ることになったので、下記の項目を理解したい。 mongoDBの概要 mongoDBにおける基本的な操作の把握 Tableの作成 Itemの作成 Itemの取得 mongoDBの概要 Table、…

ふつうのLinuxプログラミング(4章)

学べること パーミッション 端末 ディレクトリのパーミッションの挙動は下記の通り。 read => ファイル一覧が取れる write => ディレクトリの中にファイルを作れる execute => そもそもファイルにアクセスできない 僕達がコマンドラインとして認識しているの…

TypeScript 2.7での esModuleInteropをつけたコンパイルの挙動

モチベーション GitHub - selmertsx/serverless-prpolice 個人プロダクトの開発中に、TypeScriptのコードが buildすると実行できるのに、Jestのテストだけコケるという問題が発生した。その原因を調査したかった。 前提条件 "typescript": "^2.7.1" 問題の内…

20180208の学び

最初に これは個人プロダクトで学んだ内容をまとめたもの。 GitHub - selmertsx/serverless-prpolice 忘れる前に書いておくけれども、後でちゃんと整理する 学んだ内容 AWS cloudformation でlambdaをdeployする前に、awsのs3にbucketを作っておかなければな…

一からtslintの設定をする方法

モチベーション tslintについては、これまで誰かが作ってくれた設定ファイルを使ってきました。 しかし、そろそろちゃんと理解したいと思い、諸々調べてみました。 この資料に tslint を一から設定する方法を記載し、自分の理解を整理しようとおもいます。 ※…

ふつうのLinuxプログラミング読書 (3章)

ファイルとは 何らかのデータを保持し 何らかのデータとは、テキスト、画像、 パーミッションや更新時間などの付帯情報を保持しており 名前で指定して閲覧・実行ができるものである ファイルの種類 Regular File 画像。動画。テキストなど。 Directory この…

JavaScriptで正規表現(入門レベル)

モチベーション 現在、iioptという画像圧縮ツールを作成しています。このツールの一つの機能として、git pre-commit にhookしてcommit対象の画像を抽出し、圧縮が必要であれば圧縮するという機能を開発中です。 本記事は、そこで学んだ正規表現の書き方につ…

ふつうのLinuxプログラミング読書会 (第2章)

2章: Linuxカーネルの世界 最初に 本資料は、学習者が本を元にサマリーを書いたものです。 分量はものすごく減っていますし、間違ったことを書いている可能性もあります。なので、気になった人は直接本を読んで頂けると幸いです!! 知識として学べること OS…