Docker

term_id: docker

Category: engineering_practice

Definition

Docker cho phép các nhà phát triển đóng gói một ứng dụng cùng với tất cả các phụ thuộc của nó vào một đơn vị chuẩn hóa cho phát triển phần mềm. Các container này cô lập phần mềm khỏi môi trường của nó, đảm bảo tính nhất quán.

Summary

Docker là một nền tảng để phát triển, phân phối và chạy các ứng dụng trong các container nhẹ và di động.

Key Concepts

  • Container hóa
  • Hình ảnh (Images)
  • Cô lập
  • Khả năng di động

Use Cases

  • Triển khai các mô hình ML đã huấn luyện dưới dạng vi dịch vụ (microservices)
  • Chuẩn hóa môi trường phát triển cho các nhóm khoa học dữ liệu
  • Mở rộng quy mô tải lượng suy luận (inference) trên cơ sở hạ tầng đám mây

Code Example

1
2
3
4
5
FROM python:3.9-slim
COPY . /app
WORKDIR /app
RUN pip install -r requirements.txt
CMD ["python", "app.py"]