시놀로지 도커에서 ubuntu로 이미지를 받은 다음에 그 안에서 이것저것 설치하고
실행 스크립트를 만들어서 컨테이너에 올리면 bash가 기본 실행이기 때문에
컨테이너에 올라간 상태에서 bash로 들어가서 스크립트를 실행했더라도
컨테이너가 내렸다가 다시 올리면 다시 그 스크립트를
실행 해줘야한다. 이미지를 생성할 당시에 cmd가 bash 이기 때문에 그렇다..
이를 해결하려면 ssh로 나스에 접속해서 docker commit 하면 해결이된다.
예를들어 python3 스크립트가 실행되는 이미지로 바꾸고싶을때
ssh 명령창에서 다음처럼 커밋한다.
docker commit --change='CMD ["python3", "/실행경로/파이썬파일.py"]' 기존컨테이너ID 새이미지명/새태그명
컨테이너 아이디는 docker ps -a 명령으로 실행하면 컨테이너 목록이 쭉 나온다.
요로코롬해서 실행하면 새이미지가 만들어지고 이미지를 컨테이너로 올리면서
자동시작 옵션을 걸어놓으면 컨테이너가 올라갈때 스크립트가 자동실행된다.
이렇게 응용해서 나만의 스크립트 컨테이너들을 여러개 만들어놓으면 된다..
댓글 없음:
댓글 쓰기