순간, 컨테이너 매우 유행 되 고 컨테이너에 관해서, 사람들 일반적으로 독 노동자 들에 대해 이야기. 심지어 컨테이너 응용 프로그램을 패키지 하 독 노동자의 사용을 설명 하기 위해 containerizing 동사 형태 자체는 있습니다.
열띤된 논쟁 후 실제 프로덕션 환경에서 컨테이너를 사용 하는 방법에는 독 노동자의 초점 마이그레이션한 그리고 사람들이 스토리지, 네트워킹, 또는 관리 "containerization"의 철학을 적용 했습니다.
의심의 여지가이 강한 추진력, 아래 독 노동자 사용할 수 있는 안정적으로 프로덕션 환경에는 확실히 하지 너무 멀리 있다. 이 엔지니어에 의해 검증 된 독 노동자 기반 사용 사례 들을 공유 합니다.
우선, 다른 블로그에 잠시 언급 한, 그리고이 문서는 동료와의 커뮤니케이션의 확장에 기반. 이들은, 물론, 독 시장 동향 문 노동자를 반박 합니다.
레벨
에 기능 테스트
여기, 나 하지 기능 테스트 및 소프트웨어 테스트의 종류를 설명 하는 것을 계속 하 고 싶다. 이미 많은 기사 왜 단위 테스트 기반으로 해야 합니다 실제 서비스를 설명 하 고 환경 실행이 있다.
지금, 단위 테스트에 테스트 기반 개발 응용 프로그램을 개발 하는 좋은 방법은 입증 했다 그리고 전체 개발 프로세스에서 단위 테스트 됩니다. 일반적으로, 당신은 같은 시간에 단위 테스트 및 코드를 작성 하 고 반복 반복 방식에서 코드 및 단위 테스트 시작.
코드를 제대로 작동 하는 때 일반적으로 검토 하 고 병합 하기 전에 아마도 검토 하 고 병합 하기 전에 일부 기능 테스트와 단위 테스트를 실행 하는 CI 환경에 제출 됩니다.
기능에 대 한 기능 테스트를 동시에 제출 하지 때문에 기능 테스트 하기 쉽지 않다 하 고 많은 시간을 걸릴 수 있습니다. 테스트에 필요한 컨텍스트에서 통신 하는 방법 같은 데이터베이스의 초기 설립 등 모든 것을 올바르게 구성 해야 합니다.
같은 시간에 당신이이 방법으로 테스트 환경을 구축 하 고 그것은 작용 하는 경우에 대부분의 사람들이 아직도 단순히 배치 환경 DB, 응용 프로그램 및 웹 서버 같은 상호 작용 하는의 전체 집합을 설정 하는 대신 여러 동료에 의해 공유 하는 가상 컴퓨터에. 당신은 거 야 확실히 않을 그것은 더 비싼 때문에 응용 프로그램 확장성을 테스트.
간단한 VM 보다는 여러 서비스에 걸쳐 기능 테스트
그리고, 독 노동자를 사용 하 여 및 그림 배치는 쉽게 달성 될 수 있다. 다른 환경 지정 하 고 신속 하 게 배포할 수 있습니다. CI에 직접 다른 목표와 콘텐츠를 실행할 수 있습니다 그리고 당신은 더 중요 한 것은, 쉽게 동료 들과 공유할 수 있습니다. 모든 독 노동자, 미러링에 대 한 몇 가지 매우 스마트 캐시를 구축 하 고 초에서 그들을 실행할 수 있는 때문 이다.
는
배포를 어떤 방식으로 사용자를 알려줍니다.
Dockerfile 때, 응용 프로그램 구축 방법 및 어떤 구성은 특정 지정. 다시, 당신은 어떻게 작동 사용자를 표시할 수 있습니다. 감안할 때 전문 복잡 한 소프트웨어 배포 개업의 능력과 경험 없어, 결과 완벽 하지 않을 수 있습니다 하지만 아주 최소한 일 어떻게 사용자 알 수 있습니다, 시키는 대신 그들 그들의 머리를 랙.
도, 강력한 만들 수 있습니다 단위 테스트를 더!
다른 블로그에, 나는 dox 소개. OpenStack 해 본 적, OpenStack 종종 테스트를 실행 하려면 많은 매우 복잡 한, 그래서 우리는 과정의 복잡성을 단순화 하는 시스템 필요 찾을 수 있습니다. 그러나, 뿐만 아니라 OpenStack는 이러한 매우 복잡 한 테스트, 당신은 같은 SQLAlchemy, 실행 하 고 단위 테스트를 실행 하는 백 엔드에 sqlite를 해야 합니다. 하지만 결국 될 수 있습니다 제대로 작동 하지 않는 외래 키와 같은 일부 매우 이상한 국가 그리고 다른 SQL 기능은 구현 되지 않습니다. 하지만 컨테이너를 사용 하면 쉽게 쉽게이 테스트를 완료 하려면 구성 된 DB를 포장할 수 있다. 그리고 이렇게에, 시스템, 또는 일부 구성/파일에 의존 해야 할 때 독 노동자 패키지 수 있습니다 쉽게 그들.
바라 건 대,이 포인트를 이해, 당신은 확인할 수 있습니다 더 컨테이너 개발 프로세스의 필수적인 부분 이다. 동시에 나는 이러한 워크플로에 더 많은 콘텐츠를 추가 됩니다 개발을 더 편리 하 게 나중에 더 강력한 도구가 될 것입니다 바랍니다.
원래 링크: 독 노동자 개발. (편집/동양 revisers/Zhou Xiaolu)을 사용 하는 경우