2017-10-07 2 views
2

도커 컨테이너 나 포드는 일회용으로 간주되어 수명이 짧다는 많은 서적과 문서 [1] [2]를 읽었습니다. 왜 그들은 일시적인 것으로 간주됩니까? 그런 경우 어떻게 프로덕션 환경에서 컨테이너 화 된 애플리케이션을 실행할 수 있습니까?docker-container 또는 kubernetes-pod가 일회용으로 간주되는 이유는 무엇입니까?

게다가, disposable-container와 immutable-container라는 두 용어는 같은 의미입니까?

[1]은 https://kubernetes.io/docs/concepts/workloads/pods/pod-overview/
[2] 또한 https://developers.redhat.com/blog/2016/02/24/10-things-to-avoid-in-docker-containers/

답변

2

는 두 용어 일회용 컨테이너 불변 컨테이너는 동일한 의미 있습니까?

변경할 수 없다는 것은 변경할 수 없다는 것을 의미합니다. 일회용, 귀하의 질문의 맥락에서, 그것은 파괴 될 수 있고 약간의 결과로 대체 의미합니다.

이러한 사항은 동일하지 않지만 일반적인 컨테이너 응용 프로그램에서 함께 작동합니다. 변경할 수없는 컨테이너가 실행되며 컨테이너의 동작을 변경하려면 기존 컨테이너를 변경하는 대신 새 컨테이너로 바꿉니다.

이것은 앱의 동작을 변경하려는 경우 코드 업데이트를 배포하고 서비스를 다시로드하는 VM과는 다릅니다.

왜 일시적인 것으로 간주되는 것입니까?

컨테이너는 프로세스입니다. 프로세스가 일시적입니다. 컨테이너는 일시적입니다. Containers are able to persist data separately though.

생산에 컨테이너를 사용하여 끊기가 "당신이없는 상태?와 생산 에서 컨테이너 응용 프로그램을 실행할 수있는"고쳐 될 수 있다면 하나

생산

에서 컨테이너 응용 프로그램을 실행할 수있는 방법을

, 그러면 먼저 모든 응용 프로그램이 상태 저장이 가능한 것은 아닙니다. 기본 웹 서버 또는 잘 설계된 마이크로 서비스.

상태 저장 응용 프로그램의 경우 공용 데이터베이스를 사용하여 컨테이너 화 된 응용 프로그램을 백업 할 수 없습니다. 위에서 설명한대로 볼륨을 사용할 수도 있습니다. 두 가지를 결합하여 데이터베이스 컨테이너 아래의 볼륨을 사용하여 컨테이너 화 된 데이터베이스를 실행할 수 있습니다. 국가는 실제로 문제가 아닙니다.

+0

알았습니다. 콘테이너에 대한 변경이 직접 이루어져서는 안되기 때문에 컨테이너는 일회용입니다 (컨테이너를 다시 시작한 후에 콘테이너 레이어의 변경 사항이 사라집니다). 그러므로 컨테이너를 재건해야하고 새로운 컨테이너로 파괴하고 대체하기는하지만 – alixander

관련 문제