• 북마크

docker

docker의 one service at one container 테스트 결과

본문

uwsgi를 실행시키면 echo loop 스크립트가 없더라도 동작을 해야한다고 생각했다.

 

하지만 테스트 결과 동작하지 않음

 

테스트 사항은 다음과 같음

 

1. docker-compose.yml에서 command로 uwsgi 명령어를 직접 수행 -> 에러 발생

ERROR: for 0b00e6267665_uwsgi-app  Cannot start service uwsgi-app: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"/tmp/run.sh\": stat /tmp/run.sh: no such file or directory": unknown

 

2. dockerfile에서 run.sh 파일 내 uwsgi 명령어만 수행 -> 에러 발생

uwsgi-app    | [uWSGI] getting INI configuration from /application/uwsgi.ini

nginx-php-webserver | 2020/05/19 11:21:28 [emerg] 1#1: host not found in upstream "uwsgi-app" in /etc/nginx/sites-available/sample_python_ng.conf:46

 

즉 nginx는 uwsgi의 port로 구동중인 서비스를 찾을 수 없어 에러를 출력함

 

3. run.sh 수행

 

스크립트 내용 :

#!/bin/bash

uwsgi --ini /application/uwsgi.ini

while true
do 
    echo "still live"
    sleep 600; 
done

 

위와 같은 명령어 수행시 동작함

 

다른 사람들의 dockerfile을 좀 더 분석해 봐야겠다.


 

 


[이 게시물은 최고관리자님에 의해 2020-05-23 01:46:35 일상기록에서 이동 됨]

댓글목록 1

최고관리자님의 댓글

config 파일과 소스 파일을 volumes로 연결을 하다보니 dockerfile의 종단에서 명령어로 서비스를 바로 실행하는데 어려움이 있다.
아무래도 개발 환경을 먼저 생각하다보니 버릴 수 없는 문제이다.

배포시에는 이러한 고민이 필요 없는 만큼, 지금은 loop 스크립트로 docker 컨테이너 운영이 지속되는 환경을 유지해야 한다
완벽한 이미지로 동작시키는 방법에 대해 테스트를 할 필요는 있다.

그리고 log들을 한곳에서 수집하고 관리하는 docker 서비스를 만들 필요가 있다는 생각이 들었다.

이러면 해당 컨테이너만 volumes을 걸어 작업을 하면 차후 발생될 수 있는 컨테이너 문제 발생시 데이터 손실에서 벗어날 수 있을 것이다.

전체 19 건 - 1 페이지
제목
최고관리자 1,460 2020.08.06
최고관리자 1,040 2020.08.06
최고관리자 3,632 2020.06.30
최고관리자 1,668 2020.06.29
최고관리자 1,506 2020.06.06
최고관리자 982 2020.06.03
최고관리자 4,218 2020.05.27
최고관리자 1,112 2020.04.27
최고관리자 1,137 2020.03.31
최고관리자 2,216 2020.05.19
최고관리자 1,061 2020.05.10
최고관리자 1,048 2020.04.30
최고관리자 1,151 2020.04.27
최고관리자 1,101 2020.05.23
최고관리자 5,131 2020.05.15