2016-10-28 5 views
3

I 두 개의 군집 관리자 노드 (mgr1, mgr2)를 설정했습니다. 그러나 컨테이너에 연결하려고하면 오류 메시지가 발생합니다.도커 컨테이너에 연결할 수 없습니다.

[[email protected] ec2-user]# docker run --restart=unless-stopped -h mgr1 --name mgr1 -d -p 3375:2375 swarm manage --replication --advertise 10.3.2.24:3375 consul://10.3.2.24:8500/     

[[email protected] ec2-user]# docker exec -it mgr1 /bin/bash 

rpc error: code = 2 desc = "oci runtime error: exec failed: exec: \"/bin/bash\": stat /bin/bash: no such file or directory"

그것은 모두 서버 (mgr1, mgr2)에서 일어나고. 또한 각 노드마다 영사 컨테이너를 운영하고 영사 컨테이너에 연결할 수 있습니다.

+0

주제가 약간 벗어나지 만 Docker 1.12.3을 사용할 수 없습니까? 이 버전을 사용하면 설치하기 쉬운 Swarm 모드를 사용할 수 있습니다. –

답변

2

/bin/bash은 컨테이너에 없을 수 있습니다. 코멘트
busybox을 바탕으로 매우 가벼운 무게 리눅스 기반의 이미지가 있고 일부 :

docker exec -it mgr1 sh 또는
docker exec -it mgr1 /bin/sh 또는
docker exec -it mgr1 bash 또는
docker attach mgr1

UPDATE 아래 그림과 같이 sh 사용할 수 있습니다 위의 내용은 완벽하게 작동합니다.

bash $ sudo docker exec -it test1 bash 
rpc error: code = 13 desc = invalid header field value "oci runtime error: exec failed: container_linux.go:247: starting container process caused \"exec: \\\"bash\\\": executable file not found in $PATH\"\n" 
bash $ sudo docker exec -it test1 sh 
/# exit 
bash $ sudo docker exec -it test1 /bin/sh 
/# exit 
bash $ sudo docker attach test1 
/# exit 
bash $ 
+0

동일한 오류가 발생했지만 시도했습니다. – code4geeks

+0

위의 두 명령 중 어느 것도 도움이되지 않는다는 것을 의미합니까? 귀하의 경우 기본 이미지는 무엇입니까? 그리고'docker ps' 명령어의 결과는 무엇입니까? – Rao

+0

기본 이미지는 Amazon Linux입니다. 여기에 자세한 정보가 있습니다 : https://s3.amazonaws.com/va-awsconfig/343434343.PNG – code4geeks

관련 문제