Ubuntu16.04でDockerのプライベートレジストリにhttp接続する

社内ネットワークなどの閉じたネットワークでDockerのレジストリを構築し、http接続するときにUbuntu14.04とubuntu16.04とで設定方法が違ったのでメモしておきます。

検証したときのバージョンは以下の通りです。

  • Doker Client/Server:1.12.1
  • registry:2.5.0

Continue reading →

Dockerで一定数以上のコンテナ作成に失敗する(could not create session key: disk quota exceeded)場合の対処

弊社でも最近Dockerに触る機会が増えてきました。触り始めた当初は仮想化との違いに戸惑うことも多かったのですが、少しずつ慣れてきた気がします。今回はコンテナをスケールさせた時にハマったことを記事にしました。

発生事象

コンテナのスケール時、CPU等のリソースに余裕があるにもかかわらず、Dockerが以下のエラーを出力して一定数以上のコンテナを起動できない。

ERROR: for otest_app_21  b’rpc error: code = 2 desc = “oci runtime error: could not synchronise with container process: could not create session key: disk quota exceeded”‘

Continue reading →

Dockerで物理マシン間のOverlayネットワーク(VXLAN)を試す

あるアプリケーションの調査を行うために、VMを作ってそのVMの上で対象のアプリケーションを実行しようとしていたのですが、Docker上でも実行できるのではと思い立ち、Dockerの調査を行いました。

その過程で、DockerでサポートされているOverlayネットワークのVXLANとVXLANが提案されているRFC 7348の調査を行い、実際に物理マシン間でOverlayネットワークを構築しました。
そして、物理マシン上のコンテナ間でpingを実行時に物理マシン上でパケットダンプを実行したり、iperf3を使用してパフォーマンスの確認を行ったので、まとめておきます。

本記事では、VXLANやDockerなどの技術やコマンド自体については、記事が長くなることを避けるため、説明を省略しています。
ご了承ください。

Continue reading →