도커가 한 컴퓨터에 포트를 게시하지 않습니다.

도커가 한 컴퓨터에 포트를 게시하지 않습니다.

두 대의 Linux 시스템에서 이 명령을 실행합니다.

docker run -d --name registry --restart=always -p 4000:5000 -v registry:/var/lib/registry registry:2

예상대로 포트가 하나씩 해제됩니다.

$ docker ps
CONTAINER ID   IMAGE        COMMAND                  CREATED          STATUS          PORTS                    NAMES
0cae195defe8   registry:2   "/entrypoint.sh /etc…"   3 seconds ago   Up 2 seconds   0.0.0.0:4000->5000/tcp   registry
$ ss -nltp|grep 4000
LISTEN 0      4096         0.0.0.0:4000       0.0.0.0:*                                          

반면에 다음은 그렇지 않습니다.

$ docker ps
CONTAINER ID   IMAGE        COMMAND                  CREATED         STATUS         PORTS     NAMES
5d3726252a61   registry:2   "/entrypoint.sh /etc…"   4 seconds ago   Up 3 seconds             registry
$ ss -nltp|grep 4000
$

Docker가 두 번째 시스템에 해당 포트를 게시하지 못하게 만드는 원인은 무엇입니까?

참고: 컴퓨터를 다시 시작해도 문제가 해결되지 않습니다.

편집하다포트 게시가 작동하지 않는 머신의 Docker 버전:

Client: Docker Engine - Community
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 23:03:17 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.17
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.17.11
  Git commit:       a89b842
  Built:            Mon Jun  6 23:01:23 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.6
  GitCommit:        10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc:
  Version:          1.1.2
  GitCommit:        v1.1.2-0-ga916309
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

작동하는 머신의 도커 버전은 클라이언트에 한 줄이 더 있다는 점을 제외하면 정확히 동일합니다.

 Cloud integration  0.1.18

관련 정보