y-ohgi's blog

TODO: ここになにかかく

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

AWSにおける本番環境を想定したCI/CD実践

この記事は DMM.com Advent Calendar 2018 - Qiita の25日目です。 About CircleCIとCode兄弟を使いCI/CDを作っていこうというものです。 単純に環境を作るわけではなく、CloudFormationを使って本番環境を想定した構成にしていきます。 ターゲットとしては…

Play with DockerでSwarmクラスターことはじめ

TL;DR ブラウザでSwarmのクラスタを試す Play with Docker ブラウザ上でDockerを試せるサイト 特徴としては以下 複数台インスタンスを建てれる クラスター構成にすることが可能 起動した環境は4時間しか使えない 使用するためにはDockerHubのIDが必要 Swarm …

HerokuでRailsの本番環境を作成する

概要 Components localの構築 railsの用意 docker-composeの用意 Herokuの操作 アドオンの導入 Databaseの導入 ログ監視のためにPapertrailを導入 アプリケーションの性能監視のためにNewRelicを導入 Herokuの設定変更 環境変数へタイムゾーンを登録 Procfil…

スプレッドシート上のデータをseedへ変換するrakeタスクを作成する

概要 やったこと 環境 手順 スプレッドシートの用意 スプレッドシートからtsvを出力 Gemfileへgemの追加 Taskの作成 Taskの編集 seedデータの生成 データのインポート 概要 ビジネスサイドの人とサービス作るお仕事してるとよくスプレッドシートでマスターデ…

個人事業主として副業を受けるために調べたこと

TL;DR 主観がご多分に含まれています。 僕(20代ソフトウェアエンジニア)が副業を個人事業主として受けるために色んな人に話を伺ってまとめたテキストです。 マサカリは大いに歓迎。 収入が20万以上になると確定申告が必要 確定申告を行う際に一括で税金を支…

BEMについて調べた

概要 フロントエンド設計方法の1つのBEM(ベム)について。 クラス命名によって汎用的かつ保守的なコードにすることが目的。 要するにclass名の命名規則。 BEMについて Block , Element , Modifier という3つコンポーネントによってなりたつ。 BEMという名前も…

Cloud BuildとkustomizeでGKEのCDパイプラインを作る

概要 Cloud BuildでCDをしたいので、する。 ついでにkustomizeも組み合わせる。 ※プロダクションに導入するには権限がガバガバなので適宜修正。 今回のリポジトリ github.com 目次 概要 今回のリポジトリ 目次 やること スタック CDの流れ 1. CircleCIでGitH…

Google App EngineでPHP7.2が使えるようになったので試す

概要 GAEにphp7.2のランタイムktkr やるぞ Google Cloud Platform Blog: Bringing the best of serverless to you とりあえずphp7系を試す phpを書く ルーティング用コードを記述 app.yaml の handlers はphp7では効かないので index.php へ記述する // info…

社内LT会でKnativeについて発表した

概要 LTやったよ 次回勉強会に向けての反省 社内LT会について クラウドインフラ系で社内勉強会をいくつか主催させていただいています。 クラウドインフラLT会 クラウドインフラランチ会 Kubernetes輪読会 この3つを定期的にやっていて、今回は「CloudNext'18…

標準入力でDockerfileを渡してイメージをビルドする

単純に、「できるんじゃね?」って思って試したらできたっていう小ネタ $ cat <<EOL | docker build - > FROM node:10-alpine > > RUN npm install -g aws-cdk \ > && apk add --no-cache git > EOL カジュアルに書き捨てイメージが作れるので更にDockerライフが捗る</eol>

aws-cdkを試す

概要 awslabs/aws-cdk を試した。 一言で言うと「CloudFormationをコード(JavaScript/Java)で記述するためのライブラリ」。 試す 公式のGetting Startedをやってみる Hello, AWS CDK! — AWS Cloud Development Kit 0.8.0+0eede70 documentation 0. 環境を用…

Knativeを試してみる

概要 Kubernetes上でサーバーレスを動かすためのOSSフレームワークのKnativeを試した 概要 Knativeとは Serverless コンポーネント 試す 0. 前提 1. GKE Clusterの作成 2. cluster-admin権限を現在のユーザーへ与える 3. Istioのインストール 4. Knativeのイ…

Application Load BalancerでHSTSを試す

AWS

概要 HSTS(httpをhttpsへリダイレクトさせる機能)がALBで提供されたので試す。 Elastic Load Balancing Announces Support for Redirects and Fixed Responses for Application Load Balancer 試す 準備 ECSでnginxを立てる ALBとnginxを紐付ける ACMでTLS…

Amazon EKSをDockerでいいかんじに始める

概要 Amazon EKS の getting started の工程がそこそこ多い。 その上AWS力(IAMだったりVPCだったりCloudFormationだったりの理解)を求められるので、そこら辺すっ飛ばしてGKEライクに「1コマンドでEKSはじめたい!」が動機 それだけだと残念なので、ついで…

macOSの環境設定と運用方法が整ってきたので晒す

目次 概要 TL;DR dotfiles 実行環境 ターミナル Terminal bash .bash_profile alias/function pbcopy cdf プロンプト syslogの削除 tmux Spacemacs packages multiple-cursor undo-tree Applications Google 日本語入力 Google Chrome Chrome Extension Alfr…

Golang環境を整える

概要 Golangをはじめるためにローカルの環境を整える いつもどおりDockerに固めちゃろって思ってたけど、 $ go get やら $GOPATH やらが面倒そうなのと最近 $ go get を要求されることが度々あるのでこの際ローカルに直接。 構築する環境 macOS High Sierra …

Amazon EKSことはじめ

やたらControl Planeの作成にハマったので備忘録 環境 使うのはMacとDocker。 あとローカルのAWS CLIのクレデンシャル mac OS Sierra 10.12.5 docker 18.03 Docker version 18.03.1-ce, build 9ee9f40 aws-cli 1.15.30 EKS対応は 1.15.32 から 18/06/06時点…

Pull Request毎にGAEでSwaggerをプレビューさせる

概要 APIの量産が必要になったものの、複数人でAPIを量産しているとSwaggerのPRも量産されてく。 Swaggerのレビューはyamlを見てレビューするわけだけど、わざわざSwaggerのプレビューをするためにブランチにチェックアウトしてpullしてサーバー立てるのはし…

GKEでhttps

概要 GKEでhttpsを用いるために、Let's Encrypt cert-managerを試した覚え書き。 jetstack/cert-manager: Automatically provision and manage TLS certificates in Kubernetes 環境 macOS Sierra GKE v1.9.6 helm v2.9.1 $ kubectl version Client Version:…

helm覚書

概要 Kubernetesのパッケージ管理ツール。LinuxでいうaptやyumのKubernetes版のイメージ。 公開されているManifestファイル(HelmではChartと呼ぶ。)をもとにアプリケーションをデプロイすることが可能 デフォルトで使用可能なChartは kubernetes/charts の…

GCPを複数プロジェクト触るのでbashを良い感じにする

GCP

概要 お仕事でGCPを複数プロジェクト扱うことになった 操作は基本 gcloudコマンドから行っているので、shellを良い感じにしたいのがモチベーション。 // あとGAEのデプロイ先GCPプロジェクトを間違えたのもモチベーション... それと、GKEも使うのでそっちも…

AWS 認定ソリューションアーキテクト アソシエイトを新卒が受験した話

AWS

はじめに 1月に取得したものの、ブログを書く気力がなかったので気づいたら5月になってしまった。 AWSソリューションアーキテクト アソシエイトとは AWS認定試験の中級レベルの試験。 レベルはIPAの資格のように別れており、初級・中級・上級で別れてます。 …

sternを触ってみる

概要 Kubernetesのpodsログ閲覧用コマンド kubectl logsだといちいちpodの指定をしたり、過去のログを見れなかったりでしんどい それを解決してくれたのが wercker/stern How To Use Install brew でサクッと $ brew install stern monitoring log $ stern <POD NAME> </pod>…

GCPのCloud SpannerをGAEで動かす

概要 GCPのCloud Spannerについて調べて動かしてみた話 やったこと Cloud Spannerの調査 GAEからCloud Spannerを叩く アウトプット github: https://github.com/y-ohgi/gcp-practice GAE(Google App Engine) GCPのPaaS 勝手にスケールするし負荷分散もしてく…

Twitter OAuthをServerless Framework + Cognito Federated Identityで行う

背景 Twitter OAuthをサーバーレスで作成したかった やったこと Cognitoの調査 AWSの認証基盤であるCognitoの調査を行った。 「Cognitoを使えば良い感じにAPI Gatewayの認証/認可が行けるのでは??」と甘く見積もるなどしたけど、結論しんどかった。 Cognit…