Dockerfile của chúng tôi tạo ra môi trường ứng dụng (ví dụ: biến env, cài đặt thư viện với apt-get, v.v.). Nó cũng kéo và sao chép mã ứng dụng python từ repo git của nó.
Tuy nhiên, chúng tôi đang tranh luận liệu các thử nghiệm ứng dụng (một số đơn vị, một số tích hợp) nên được đặt trong một RUN
lệnh docker (ví dụ RUN /bin/bash -c "source activate cool_env; pytest"
) hoặc sau khi xây dựng bằng cách sử dụng ngăn xếp CI (ví dụ Jenkins, Openshift) để thực hiện các thử nghiệm trên thùng chứa được xây dựng.
Những ưu và nhược điểm của mỗi là gì?