testcontainers / testcontainers/testcontainers-python
Feature: ryuk should be able to use TCP socket to connect to Docker engine API
まだ誰も着手していません。
- 主要言語
- Python
- スター
- 2.3k
- フォーク
- 386
- 平均マージ
- 4時間 40分
- マージ済み PR(30日)
- 1
説明
What are you trying to do?
I'm trying to run testcontainers on a host with Docker Engine API exposed via TCP socket instead of a Unix socket. Testcontainers run fine but ryuk fails to start because it wants to bind mount /var/run/docker.sock into container.
Using unix socket and bind mounts is hardcoded here:
Supporting mTLS TCP sockets would also be cool. mTLS support may be split off into another issue though.
Other references:
- Similar issue in testcontainers-java: https://github.com/testcontainers/testcontainers-java/issues/9137
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
core/testcontainers/core/container.py の 285-293 行目から始め、Unix socket と bind mount がハードコードされている箇所を確認し、Ryuk がどのように Docker 接続を受け取るかを追跡してください。代わりに TCP socket をどのように設定して使用すべきかを定義してください。mTLS のサポートは別のままでもかまいません。Docker Engine が /var/run/docker.sock だけでなく TCP 経由でも公開されている場合に Ryuk が接続できれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- docker, python
- 領域
- devops
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100