Environment variables from legacy containers links have disappeared with docker 29.0
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- docker, go
- 領域
- cli, networking
調査の方向性
文書化されている --link の動作から始め、Ubuntu 上で Docker 28.5.1 と 29.0.2 に対して 2 コンテナの再現手順を実行してください。レガシーリンクの環境変数がどこで生成または省略されるのかを追跡し、その後、CONTAINER1_PORT と関連する変数が 2 番目のコンテナで復元されること、または意図的な変更であることがドキュメントに明確に記録されていることを確認してください。
索引モデルが issue の本文から書いたものです。
説明
Description
Environment variables created by docker when using legacy containers links disappeared with docker 29.0: https://docs.docker.com/engine/network/links/#environment-variables
Reproduce
- docker run --rm --name container1 -p 1234 -d ubuntu sleep infinity > /dev/null
- docker run --rm --name container2 --link container1 ubuntu env
cleanup:
- docker stop container1 --timeout 0 > /dev/null
Expected behavior
CONTAINER1_PORT should exist in step 2, as well as other CONTAINER1_* environment variables:
docker 28.5.1: (5:28.5.2-1~ubuntu.22.04~jammy)
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=aa0dd55feb85
CONTAINER1_PORT=tcp://172.17.0.2:1234
CONTAINER1_PORT_1234_TCP=tcp://172.17.0.2:1234
CONTAINER1_PORT_1234_TCP_ADDR=172.17.0.2
CONTAINER1_PORT_1234_TCP_PORT=1234
CONTAINER1_PORT_1234_TCP_PROTO=tcp
CONTAINER1_NAME=/container2/container1
HOME=/root
docker 29.0.2: (5:29.0.2-1~ubuntu.22.04~jammy)
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=d2d80ab01a89
HOME=/root
tested on ubuntu 22.04 and 24.04 with the docker apt repository
docker version
Client: Docker Engine - Community
Version: 29.0.2
API version: 1.52
Go version: go1.25.4
Git commit: 8108357
Built: Mon Nov 17 12:33:14 2025
OS/Arch: linux/amd64
Context: default
Server: Docker Engine - Community
Engine:
Version: 29.0.2
API version: 1.52 (minimum version 1.44)
Go version: go1.25.4
Git commit: e9ff10b
Built: Mon Nov 17 12:33:14 2025
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v2.1.5
GitCommit: fcd43222d6b07379a4be9786bda52438f0dd16a1
runc:
Version: 1.3.3
GitCommit: v1.3.3-0-gd842d771
docker-init:
Version: 0.19.0
GitCommit: de40ad0
docker info
Client: Docker Engine - Community
Version: 29.0.2
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc.)
Version: v0.30.0
Path: /usr/libexec/docker/cli-plugins/docker-buildx
compose: Docker Compose (Docker Inc.)
Version: v2.40.3
Path: /usr/libexec/docker/cli-plugins/docker-compose
Server:
Containers: 18
Running: 6
Paused: 0
Stopped: 12
Images: 137
Server Version: 29.0.2
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Using metacopy: false
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: systemd
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
CDI spec directories:
/etc/cdi
/var/run/cdi
Discovered Devices:
cdi: nvidia.com/gpu=0
cdi: nvidia.com/gpu=GPU-xxx
cdi: nvidia.com/gpu=all
Swarm: inactive
Runtimes: runc io.containerd.runc.v2 nvidia
Default Runtime: runc
Init Binary: docker-init
containerd version: fcd43222d6b07379a4be9786bda52438f0dd16a1
runc version: v1.3.3-0-gd842d771
init version: de40ad0
Security Options:
apparmor
seccomp
Profile: builtin
cgroupns
Kernel Version: 6.8.0-87-generic
Operating System: Ubuntu 22.04.5 LTS
OSType: linux
Architecture: x86_64
CPUs: 16
Total Memory: xxxGiB
Name: xxx
ID: xxx
Docker Root Dir: /var/lib/docker
Debug Mode: false
Username: xxx
Experimental: false
Insecure Registries:
nuc:5000
::1/128
127.0.0.0/8
Live Restore Enabled: false
Firewall Backend: iptables
Additional Info
I understand the --link flag is a legacy feature, but the documentation only says it "may eventually be removed", and I didn't find any mention of changes on this documentation or the docker engine v29 release blog.
- 主要言語
- Go
- スター
- 6.1k
- フォーク
- 2.2k
- 平均マージ
- 2日 19時間
- マージ済み PR(30日)
- 21
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
docker/cli のほかの issue
-
[v29.9.0-rc.1 regression] e2e: TestRunAttachedFromRemoteImageAndRemove failing with v29.9.0-rc.1対応中かも @thaJeztah が 4 日前に担当しました。 オープンarea/testing kind/bug
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
docker/cli#7352 · コメント 3 件 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
`docker context export` writes a truncated tar archive対応中かも @2arian3 が 12 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 92/100
メンテナーはふだん 1 日以内に返信
-
Truncating log lines at 75 characters makes them useless.対応中かも @locker95 が 57 日前に担当しました。 オープンkind/bug status/0-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
cli-plugins/hooks: max-message enforcement is off by one対応中かも @fallintoplace が 135 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
メンテナーはふだん 1 日以内に返信
-
kind/feature status/0-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
-
phase:v3 type:harness
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
war-and-code/dircue#200 ·
メンテナーはふだん 1 日以内に返信
-
actor/human kind/bug priority/important-soon triage-accepted
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
kelos-dev/kelos#1804 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信