dockerfileのARGの使い方おぼえがき

ARGとは build実行時にオプション --build-arg として渡せる可変の値 使いみち 環境毎になにかを変える時に使用する ビルド時に使用する環境変数 entrypoint.sh COPY元 など Dockerfileでの定義方法 ARG hoge="fuga" 解説 上記は、変数 hoge を時環境変数 HO…

Amazon Aurora serverless を知らなかった人が 2019/07 現在の Aurora serverless の最新状況を分かる範囲でまとめた

これの続編 blog.kasei-san.com Amazon Aurora serverless って何? インスタンスの管理が不要な Amazon Aurora 決して、serverless 専用の Aurora ではない サポートしているエンジンは? MySQL 5.6 互換の Amazon Aurora PostgreSQL 10.7+ 互換の Amazon Aur…

AWS Systems Manager パラメータストアを使って、ECSのtaskで環境変数を安全に運用する方法

AWS

概要 DBのパスワードとかの機密情報をECSのtask実行時の環境変数に入れたい場合、AWS Systems Manager パラメータストアを使うとかんたん&安全 AWS Systems Manager パラメータストア is 何? AWS Systems Manager パラメータストア は、設定データ管理と機密…

dockerfileのCMDやENTRYPOINTでの変数展開について

前提 dockerfileの CMD や ENTRYPOINT でコマンドを定義する方法は2通りある exec form(推奨) : JSONの配列で定義する ["echo", "${HOGE}"] 直接コマンドが実行される(変数展開が行われない ) shell form : 文字列で定義する "echo ${HOGE}" /bin/sh -c を介…

CMDとENTRYPOINT違いおぼえがき

きちんと理解したら全然意味が異なるものだった ENTRYPOINTとは docker run 時に実行されるコマンドを定義 例 apacheを起動させるコンテナ(オフィシャルじゃないけど、説明に最適だった) の ENTRYPOINT ENTRYPOINT ["/usr/sbin/apache2"] docker run した場…

herokuのビルドをキャンセルする方法

heroku.yml の設定を間違えたりすると、デプロイ後、以下のエラーが出てタイムアウトするまで待たされて困るので、キャンセル方法を調べた remote: Compressing source files... done. remote: Building source: remote: === Fetching app code remote: remo…

AWS cli で アカウントに紐づいたロールの切り替えをする方法

aws

課題 セキュリティ上の理由等で、普段管理画面上でロールの切り替えを行っているけれど、それをCLI上でやる場合どうするの? 解決方法 ロール切り替え用のprofileを設定して、それを指定してあげれば良い ~/.aws/config [default] output = json region = ap-…

Varnish4.1 では最初の `Set-Cookie` しか read/write できない

先に結論 Varnish4.1 では最初の Set-Cookie しか read/write できないし、writeすると他の Set-Cookie は消える varnish-modulesのcookieやheaderを使えば、他の Set-Cookie もread/writeできる サンプルコード vcl vcl 4.0; import std; import directors;…

Rubyでインクリメンタルする Quine AA を書いた

デモ 実行するごとにAAの白抜きの数字が増えていきます コード http://github.com/kasei-san/quine/blob/master/incremental/main.rb コードジェネレータ 前回解説したように、Quine AA は、AAを作るコード自身をAAに変換するジェネレータを作って作成します…

Rubyで書く! Quine AA!

こちらの記事を元に自分で作ってみた時の記録です mickey24.hatenablog.com ソースコード eval$s=%w' b="BAhsK2Lgf4 D/D/7/8/9///j/B/9 /8P8H/3/w/wf/f/7/7/ ///+//P/ j/Af5/AOA PAPwAAM CHH3z4wY cffPjBh x98+MGHH /z/wf8/ /P+D/z/g nwMAAAA PAPgBAA8 AAADA…

Rubyで書く! Quineのサンプルと解説

Quine ってなに? クワイン(英: Quine)は、コンピュータプログラムの一種で、自身のソースコードと完全に同じ文字列を出力するプログラムである。 クワイン (プログラミング) - Wikipedia 基本の Ruby Quine eval s="puts'eval s='+s.inspect" 解説 eval s=…

PostgreSQL93でのレプリケーション確認方法

プライマリ側 SELECT * FROM pg_stat_replication psql -x -c "SELECT * FROM pg_stat_replication" -[ RECORD 1 ]----+------------------------------ pid | 2167 usesysid | 42700 usename | repl_user application_name | walreceiver client_addr | 10.…

バックグラウンドジョブおぼえがき

概要 job を用いて複数のコマンドを1つのシェルで平行して実行することができる 普通にコマンドを実行すると始まって、入力を受け付けるのが フォアグラウンドジョブ 入力を受け付けずに、CUIの後ろで実行されるのが バックグラウンドジョブ バックグラウン…

MySQL でテーブルをロックせずに index を貼る方法いろいろ

indexを張った場合の処理の基本的な流れ ALTER TABLE でindexを追加すると、indexを貼り終わるまでテーブルがロックされる 内部的には テーブルをロック→テーブルをコピー→コピーしたテーブルにindexを貼る→元のテーブルと入れ替える→ロック解除 という処理…

InnoDBのバッフアプールとMyISAMのキーバッファについて

概要 InnoDBとMyISAMの違いについて解説 その上で、それぞれのキャッシュの取り扱いと、キャッシュに関する値の最適化について解説 そもそも、InnoDBとMyISAMの違い どちらも ストレージエンジン MySQLは、リクエストから以下のような流れで、データのread/w…

Rubyでは真偽とtrue/falseは別物だよ! というお話

今日は、Rubyの true, false と、真偽は別物だよというお話をします これは何? 会社blogで公開しようとした直前に、上位互換の記事が出てお蔵入りしてしまった可愛そうなblog記事です techracho.bpsinc.jp 供養と自分の学習記録も兼ねて、個人ブログにupいた…

いまさら MacBook Air mid 2011 をサクサクにするためにやった3つのこと

Mac

これはなに やたら重くなった MacBook Air mid 2011 (memory 4GB, strage 250GB) をサクサクにするまでの苦闘の記録です 古いMacBookに発生した、つらみあふれる現象 ログイン画面を開いてからパスワードを入力するまで1分ほど待たされる 起動してからブラウ…

Varnish 2.1のサブルーチンの流れ

こちらの続き blog.kasei-san.com VarnishのSaaSであるfastlyでは、VCLがVarnish2.1準拠 そのため、Varnish2.1での処理の流れを改めて把握して、図に書いた Varnish 2.1のサブルーチンの流れ エラーやrestatなど、正常処理以外の流れは端折っているので注意 …

VarnishとVCLおぼえがき

Varnish とは 正式名 Varnish HTTP Cache cache機能を持つリバースプロキシ 基本的にはcacheサーバとして使われる VCL - Varnish Configuration Language という独自言語で設定を行う 最新バージョンは6.0.2 (2018/11/12 Release) VCLについて 手続き型言語 …

PostgreSQL9.3で同期レプリケーションしてみる

これの続き blog.kasei-san.com やったこと EC2環境を2台構築 マスタの環境構築 スタンバイの環境構築 マスタでレプリケーションステータスを確認 マスタが更新されるとスタンバイが更新されることを確認 EC2環境を2台構築 web UI から Amazon linux の t2.s…

PostgreSQLのバックアップ覚えがき

PostgreSQLのバックアップは3種類 コールドバックアップ ホットバックアップ オンラインバックアップとポイントインタイムリカバリ(PITR) コールドバックアップ 特徴 物理バックアップとも言われる $PG_DATA のファイルをまるまるコピーする方法 メリット 方…

PostgreSQLのレプリケーション覚えがき

PostgreSQL のレプリケーション 現在は以下の2種類をサポート ストリーミングレプリケーション(9.0〜 ロジカルレプリケーション(10〜 どちらもWALをスタンバイに渡すことでレプリケーションが行われている 今回はストリーミングレプリケーションについて詳し…

Amazon linux に PostgreSQL 9.3の環境を構築してみる

諸事情あって、EC2 on PostgreSQL 9.3 を知る必要があるので、ひとまず環境を作成してみる やったこと EC2環境構築 PostgreSQL 9.3 のインストール PostgreSQL 9.3 の起動 ユーザとDB、tableを作成して、select を実行 EC2環境構築 適当に web UI から Amazo…

WEB+DB PRESS Vol.108 詳解PostgreSQL 読書メモ

自分が知らなかったことや興味があったことだけをメモしているので、全体が知りたい人は WEB+DB PRESS を買って読みましょう WEB+DB PRESS Vol.108作者: 中野暁人,山本浩平,大和田純,曽根壮大,ZOZOTOWNリプレースチーム,権守健嗣,茨木暢仁,松井菜穂子,新多真…

将太の寿司について

この記事は沼アドベントカレンダーの22日目です 私が起きている間は22日ってことにしてください。本当にごめんなさい adventar.org 20,21 日目がまだ更新されていないですが、それぞれ興味深い沼ですので更新を楽しみにしております...! で、なんで将太の寿…

AWS DMS おぼえがき

これはなに? AWS DMSについてざっくり概要を理解したので、忘れないように書いたメモです AWS Database Migration Service(簡単、安全なデータベース移行)|AWS 先にまとめ AWS DMSは、最小のダウンタイムでデーターベースの移行をしてくれるサービス テー…

社内LT大会(FFLT)で、転職活動のふりかえりについて話してきました

FFLTとは 弊社フィードフォースが不定期に行っているLT大会です くわしくはこちら developer.feedforce.jp 先日退職エントリを書いたので、それに合わせて転職活動のふりかえりについて話してきました 発表資料 転職活動ふりかえり from 誠 小林誠 参考資料 …

株式会社フィードフォースを2018年いっぱいで退職いたします

feedforceアドベントカレンダー8日目! まさかの退職エントリで参加です! adventar.org 7日目はマスタカさんの健康的な記事でした! 私も最近ジムサボりがちなので、そろそろ再開したいですね... masutaka.net なんでフィードフォースに来たの? 2009年9月。web…

Amazon Auroraへの移行事例をまとめて知見を抽出してみた

先に知見まとめ 急いでる人はここだけ読めば良いと思う 移行方法 以下の3つの方法のどれかで移行している RDSの場合、Auroraリードレプリカを作成して、同期完了後、昇格 Amazon DMSでAuroraにデータを移行。同期完了後、切替 DMSにはいくつか制限があるので…

Amazon Aurora を知らなかった人が 2018/12 現在の Aurora の最新状況を分かる範囲でまとめた

主にMySQLについて調査 Amazon Aurora って何? MySQL/PostgreSQL 互換のリレーショナル・データベース サポートしているエンジンは? MySQL 5.7 MySQL 5.6 PostgreSQL 9.6 RDSと何が違うの? 高パフォーマンス スケーラブル 低運用コスト(人もお金も) 耐障害性…