2024年5月17日
基本的なところで無駄にハマってしまったので自分への戒め。 `~/.docker/config.json` に入っている Docker の認証情報は以下のような構造をしています(Docker Desktop だと OS の機密情報ストアを使っていたりするので `{}` だったりします)。 ```json { "auths": { "https://index.docker.io/v1/": { "auth": "c3R...zE2" } } } ``` これを手で作
2024年2月6日
Squid を Docker コンテナで実行したかったのですが、2024年2月現在で最新の v6 で起動するものがなさそうだったので作りました。apt リポジトリにはビルド済みの squid がないのですが、alpine にはあったので alpine を使うと楽です。また、シャットダウン時の挙動に要注意。 ## できたもの * SogoKato/docker-squid * noroch/squid - Docker Image | Docker Hub sameersbn/docker-squid
2024年1月15日
Docker のログドライバーは 16KiB (16384 バイト) 以上のメッセージの場合、ログを分割してしまいます。 fluent-plugins-nursery/fluent-plugin-concat を使うことで分割されてしまったログを連結して1つにまとめられるようなので検証してみました。 ## 試してみる 用意したファイルは以下です。16383バイトのログと16384バイトのログを20秒間隔で出力するアプリを用意して docker の fluentd ログドライバーで fluentd コ
2024年1月11日
git でリモートサーバーに HTTPS で接続する時、ユーザー名やパスワードを入力する必要がありますが、push や pull のたびに入力するのは面倒ですよね。git には標準で認証情報を管理してくれる仕組みがあり、毎回の入力を省略することができます。 Windows や Mac の場合は OS の認証情報管理の仕組みと連携することができますが、Linux では `store` モードか `cache` モードしかありません。`store` モードでは平文でパスワードが書き込まれてしまい安全ではない
2023年11月18日
Rye は Rust 製の Python パッケージマネージャです。まだ「実験的」なステータスなので全ての方にお勧めできる段階ではないかもしれないですが、十分に実用的で安定していると思います。Pipenv や Poetry との違いは、パッケージ管理だけでなく、Python バージョンの管理までやってくれるところが特徴で、Pipenv/Poetry + pyenv が1つのツールにまとまっているイメージです。 さて、今回は Rye を Docker コンテナで使う時のポイントをまとめてみました。Rye
2023年9月15日
Docker Swarm 上のサービスのログを fluentd を使って送信するためのメモです。 Kubernetes で同様のことを実現する場合、Forwarder として使う fluentd を DaemonSet として起動してノード上のログを集めさせることが一般的です。今回は Swarm クラスター内の各ノードに1つずつ fluentd を起動して、あるノード上で動くコンテナのログはそのノード上の fluentd に集まるように設定していきます。 ## ポイント * 各ノードに配置するには