저는 마이크로서비스 아키텍처를 사용하고 있습니다. 나는 이미 데몬 서비스(셸 스크립트)를 개발했습니다. 이제 각각을 도커 컨테이너에서 실행하고 싶습니다. 저는 Docker를 처음 사용하기 때문에 이러한 데몬을 컨테이너에 연결하는 방법과 데몬 간의 통신을 보장하는 방법을 안내하는 문서나 튜토리얼과 같은 몇 가지 권장 사항이 필요합니다.
답변1
일반적으로 다음과 같은 Dockerfile을 사용하여 Docker 이미지를 생성합니다.
- 일부 이미지를 파생합니다[1] (
FROM debian
) - 스크립트를 조정하는 데 필요한 추가 패키지를 설치합니다(
RUN apt install ...
). - 스크립트를 이미지(
COPY daemonscript.sh /opt/daemonscript.sh
) 에 복사합니다. - 스크립트를 실행할 항목으로 설정합니다: `ENTRYPOINT ["/bin/bash","/opt/daemonscript.sh","parm1","parm2"]
이미지가 있으면 이미지를 실행할 수 있습니다. 실행 전반에 걸쳐 데이터를 유지해야 하는 경우 "bind-mounts"를 사용하여 컨테이너의 데이터 디렉터리를 호스트의 디렉터리에 연결할 수 있습니다.[2]
여러 컨테이너를 함께 실행하려면 더 간단한 방법은 다음을 사용하는 것입니다.docker-compose
[1] 적절한 이미지를 선택하기 위해서는 일반적으로 추가 설치를 최소화하면서도 불필요한 짐이 과하지 않은 이미지를 찾아봅니다. Apache, nginx, python, wordpress, mysql 등 무엇이든 즉시 실행할 수 있는 이미지를 찾을 수 있습니다.
[2] 컨테이너 인스턴스에 데이터를 보관하는 것은 나쁜 습관입니다. 컨테이너는 "일시적"으로 간주되어야 하며 물론 도커 이미지는 변경할 수 없습니다.