Docker

Spring Boot 2.5についてメモ

はじめに 今週(2020/5/20)にSpring Boot 2.5が出ましたが、どんなのが出たのかまとめて、なんとなく違いを把握おこうと思います。 基本的にはRelease Notesの内容を個人的に気になったところを少し深ぼって、自分の理解をまとめようと思うので、正確な情報は…

Docker 20.10.0についてまとめる

はじめに だいぶ前ですがDokcer 20.10.0がリリースされています。かねてからやろうと思ってやってなかったのですが、リリースノートを眺めて、気になったところをかいつまんでまとめてみようと思います。 ものによっては動かしてみようかと。 やっていく 環…

MinIOオブジェクトストレージとmcクライアントを動かしてみる

はじめに S3みたいなオブジェクトストレージで、ローカルで動かせるものが、なにかないか探しているときに、Minioというのがあることを教えてもらって、ちょっとインストールして、画像ファイルがダウンロードできるようになるまでやってみようと思います。 …

Docker BuildKitを使う

はじめに Dockerの 18.09 以降にはBuildKitという機能が存在しますが、今までなんとなく使ってただけなのでちゃんとまとめてある程度理解しておきたいなと Docker BuildKitとは そもそもBuildKitそのものはDocker Engineとは別でMoby Projectで開発されてい…

Docker Engine APIを使ってcURLでDokcer Engineを操作する

はじめに Docker のクライアントは公式だとGoとかPythonのものはあるようですが、UNIXドメインソケットを使ったHTTPでの操作も可能なようです。このブログではcURLを用いてDocker Engineに対するコマンドを実行してみたいと思います。 Docker Engine API Dok…

Dockerイメージ調査ツールDiveを試してみる

はじめに Dockerのイメージを調査するツールとしてDiveというツールがあるのを知り試してみようと思います。 何ができるか? Diveでは主に以下のようなことができます。 イメージ層ごとのコンテンツの調査 それぞれのイメージのレイヤーの差分 イメージの効…

Spring Cloud Contractをnon-JVMの言語で使う

はじめに Spring Cloud ContractはCDC(Consumer Driven Contract)をサポートするSpring Cloud傘下のプロジェクトです。 このプロジェクトはJavaのプロジェクトであることにより、初期の段階では、JVM言語以外での利用ができない状況でした。しかし、その場合…

testcontainer-goを試す

はじめに JavaのライブラリーにTestcontainersと呼ばれるものがありますが、そいつのGo版ライブラリがあると言うのを見かけたので試してみたい思います。 Testcontainersとは TestcontainersはJavaのライブラリーでDocker ContainerをJunitのライフサイクル…

squashでKubernetesのPod内のGoアプリをデバッグ実行する

はじめに 最近、アプリの実行プラットフォームとしてk8sを使うことが多いのですが、ローカルで動いているアプリがk8s上で動かないみたいな事象にハマることがありました(もちろん、なるべく環境は合わせるようにしていたのでですが、ローカルでは外部APIを…

Kongのプラグインを書いてみる

はじめに Kongはマルチクラウド対応されたAPIゲートウェイです。Kongはlua-nginx-moduleとLuaと呼ばれるScript言語を利用して、 拡張プラグインを書くことが可能で、その機能を試してみようと思います。 ここでは、以下をゴールとします Kong Pluginの基本的…

Goのタイムゾーンの変更をalpineのDockerコンテナ内で行なう

はじめに Goのtimeパッケージにはいくつかタイムゾーンを指定するための関数が生えていますが、それらはすべて、 the IANA Time Zone databaseと呼ばれる世界各地の標準時間を集めたDatabaseを利用してタイムゾーンの情報を取得します。これはubuntuの環境な…