저희는 웹 애플리케이션을 패키징 및 배포하고 있으며, 의존성 버전(예: 오래된 배포판에서 더 새로운 Python 버전 사용)을 제어하기 위해 deb/rpm 배포 방식을 컨테이너 방식으로 전환해야 할 필요성을 느끼고 있습니다.
LXC/LXD를 둘러보았는데, 컨테이너 내부에 상태를 저장하는 전통적인 애플리케이션 개발 방식에 대해 매력적으로 느껴졌습니다. 하지만 RHEL/CentOS에도 배포해야 하는데, LXC와 LXD 패키지의 상태가 매우 불안정해 보입니다. 또한 LXD도 LXC도 RHEL 생태계에서 미래를 약속받지 못한 것 같습니다.
저는 Docker가 지난 몇 년간 여러 설계 및 보안 문제를 겪었기 때문에, 그리고 저희 같은 전통적인 개발자들이 받아들이기 어려운 무상태(stateless) 컨테이너 패러다임 전환 때문에 Docker를 다소 꺼려왔습니다.
애플리케이션 가동 시간(uptime)이 매우 중요한 소규모 및 대규모 프로덕션 배포 환경에서 Docker는 이제 신뢰할 수 있는 플랫폼이 되었나요?
그리고 Docker를 사용하여 앱을 패키징 및 배포할 때의 모범 사례는 어떤 것이 있을까요?
Discourse가 Docker로만 배포되고 대규모 배포 사례도 있을 것 같아, 이 질문을 할 수 있는 가장 좋은 곳이라고 생각되어 여쭤봅니다.