Pengemasan dan kontainerisasi

Machine Learning Ujung ke Ujung

Joshua Stapleton

Machine Learning Engineer

Deployment dan kontainerisasi

Deployment

  • Mengemas model + dependensi menjadi unit
  • Untuk dijalankan di berbagai lingkungan
  • Kerangka kerja de facto untuk kontainerisasi dan deployment: Docker

Fase deployment dalam siklus hidup machine learning

Machine Learning Ujung ke Ujung

Docker

  • Platform untuk menyederhanakan pengembangan dengan kontainer

Kontainer:

  • Mengemas aplikasi menjadi aset mandiri
  • Dirancang agar agnostik platform
  • Dapatkan Docker

 

Kursus Docker DataCamp

Logo Docker

Machine Learning Ujung ke Ujung

Penggunaan Docker bagian 1

Dockerfile: instruksi untuk membangun kontainer

# Use an official Python runtime as a parent image
FROM Python:3.7

# Set the working directory in the container to /app WORKDIR /ML_pipeline
# Copy the current directory contents into the container at /app ADD . /ML_pipeline
# Install any needed packages specified in requirements.txt RUN pip install --no-cache-dir -r requirements.txt
Machine Learning Ujung ke Ujung

Penggunaan Docker bagian 2

# ... continued
# Make port 80 available to the world outside this container
EXPOSE 80
# Define environment variable
ENV NAME World
# Run app.py when the container launches
CMD ["Python", "ML_pipeline.py"]

Bangun image yang didefinisikan:

docker build -t heart_disease_model .
Machine Learning Ujung ke Ujung

Memberi tag pada kontainer

Penandaan (tagging):

docker tag heart_disease_model:latest heart_disease_model:1.0
  • Memudahkan identifikasi dan pengelolaan image/kontainer.
  • Membantu menjaga registry model yang rinci dan andal.
  • Setelah tagging, siap deploy!

Deploy divisualisasikan sebagai panah

Machine Learning Ujung ke Ujung

Praktik terbaik

Docker memudahkan pengemasan model, tetapi...

  • Utamakan keamanan
  • Jangan sertakan data sensitif
  • Gunakan image tepercaya (dari pengembang terverifikasi)

Jika aplikasi Anda memiliki info sensitif...

  • Gunakan variabel lingkungan
  • Mis.: untuk string koneksi/kata sandi

Gembok keamanan

Machine Learning Ujung ke Ujung

Ayo berlatih!

Machine Learning Ujung ke Ujung

Preparing Video For Download...