2017-04-07 1 views
1

나는 도커가 처음이므로 linuxconfig/lemp-php7 이미지를 실행하려고했습니다. 다 잘 작동하고 컨테이너에 설치된 nginx 웹 서버에 액세스 할 수 있습니다. 이 이미지를 실행하려면 내가이 명령을 사용 : 나는 떠들썩한 파티를 통해 컨테이너에 대한 액세스를 얻기 위해 다음 명령을 사용하여 이미지를 실행하려고하면
sudo docker run linuxconfig/lemp-php7-ti bash로 시작할 때 도커 연결이 거부되었습니다.

내가 nginx에 연결할 수 없습니다와 나는 connection refused 오류 메시지를 받았습니다. 명령어 : sudo docker run -ti linuxconfig/lemp-php7 bash

나는 이것을 여러 번 시도했기 때문에 우연의 일치가 아닐 것이라고 확신한다.

왜 이런 일이 발생합니까? 이 특정 이미지에만 문제가 있거나 일반적인 문제입니다. 그리고 컨테이너의 셸에 액세스하고 웹 서버에 동시에 액세스하려면 어떻게합니까?

나는 도커에 대한 전반적인 이해를 향상시키기 위해이 동작을 이해하고 싶습니다.

답변

3

docker run 대신 대신에 컨테이너가 정상적으로 실행되는 내용의을 실행합니다. 귀하의 경우에는 appears to besupervisord이며, 아마도 웹 서버가 실행됩니다. 그래서 당신은 그런 일이 일어나지 않도록 막고 있습니다.

docker exec -i -t $CONTAINER_ID /bin/bash 
+0

을 그래서 기본적으로 : (컨테이너도 제대로 시작되지 않습니다 내가 디버그 경우에 노력하고있어 경우를 제외하고)

내 선호하는 방법은 일반적으로 컨테이너를 실행 후 을 다음을 수행하는 것입니다 수퍼바이저는 컨테이너가 시작될 때 여러 프로그램을 실행하는 데 사용됩니다. 그리고 실행 후 명령 (예를 들어 bash)은 CMD [ "supervisord"]를 덮어 씁니까? – Aaronmacaron

+1

@Aaronmacaron - 네, 맞습니다. –

관련 문제