2017-04-24 5 views
-1

Django 응용 프로그램을 실행하기위한 모든 설정으로 도커 이미지를 만들었습니다. 1 단계 :도커 컨테이너 내에서 실행중인 응용 프로그램에 액세스 할 수 없습니까?

docker images 
REPOSITORY   TAG     IMAGE ID   CREATED    SIZE 
sidhartha03/django latest    c4ba9ec8e613  About an hour ago 704 MB 

단계 2 :

docker run -i -t c4ba9ec8e613 /bin/bash 

3 단계 :

[email protected]:/# cd /home 

4 단계 : 활성화 가상 ENV

[email protected]:/home# source my_env/bin/activate 

5 단계 :

백45경1천5백15조5백36억9천1백36만3천2백10
[email protected]:/home# cd my_project_directory 

6 단계 : 다시 Nginx에

[email protected]:/home/my_project_directory# sudo service nginx restart 

8 단계 : 응용 프로그램이 실행되는 왼손 확인 여부

장고 응용

[email protected]:/home/my_project_directory# gunicorn OPC.wsgi:application --bind=0.0.0.0:8000 --daemon 

스텝 7 배포 coomand 결합 Gunicorn

[email protected]:/home/my_project_directory# netstat -tulpn 

Active Internet connections (only servers) 
Proto Recv-Q Send-Q Local Address   Foreign Address   State  PID/Program name 
tcp  0  0 0.0.0.0:8000   0.0.0.0:*    LISTEN  22/python 

---> 그러나 응용 프로그램에 액세스 할 수 없습니다. 12 7.0.0.1:8000 브라우저에서 다음을 가져 오는 중 이 사이트에 연결할 수 없습니다.

127.0.0.1 연결을 거부했습니다. 시도 : 가 호스트로 gunicorn를 실행하는 경우 당신은 컨테이너 포트를 바인딩해야 프록시 방화벽 ERR_CONNECTION_REFUSED

답변

1

확인 연결 확인. 이렇게하려면 다음 명령을 사용하십시오.

docker run -i -t -p 8000:8000 c4ba9ec8e613 /bin/bash

+0

당신은의 nginx 서버가 호스트 네트워크에서 포트 8000에서 수신이 있습니까? 그 오류는 컨테이너에있는 gunicorn 만 실행 중이므로 의미가 없습니다. – kstromeiraos

+0

잘 작동하지만 도커 터미널을 종료 할 때 응용 프로그램이 중지됩니다. 백그라운드에 넣는 방법은 무엇입니까? – Sidhartha

+0

'docker run' 옵션에 -d (분리 모드) 옵션을 추가하십시오. 'docker run -i -t -d -p 8000 : 8000 c4ba9ec8e613/bin/bash' – kstromeiraos

관련 문제