Lädt...

🔧 🚀 Dockerizing a Machine Learning Model 🧠🐳Creating Dockerfile 📄Building Image 🏗️ and Pushing to Docker Hub ☁️📦


Nachrichtenbereich: 🔧 Programmierung
🔗 Quelle: dev.to

📦 Project Structure
Here’s what our folder looks like:

ml-docker-project/
         ├── Dockerfile
         ├── model.py
         └── Iris.csv

🐳 Dockerfile Breakdown

Here’s the Dockerfile we’re using:

# Use the official Python image as a base
FROM python:3.12-slim

# Set working directory inside the container
WORKDIR /app

# Copy all files from the local machine to the container
COPY . .

# Install required Python packages
RUN pip install --no-cache-dir pandas scikit-learn matplotlib

# Command to run your Python script
CMD ["python", "model.py"]

This will:

Use a slim Python base image
Copy your local files
Install all dependencies
Run model.py on container start 🧪 What model.py Does
The script:

from pandas import read_csv
from matplotlib import pyplot
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
import joblib

# Step 1: Load dataset
filename = "Iris.csv"
data = read_csv(filename)

# Step 2: Display data shape and preview
print("Shape of the dataset:", data.shape)
print("First 20 rows:\n", data.head(20))

# Step 3: Plot and save histograms silently
data.hist()
pyplot.savefig("histograms.png")
pyplot.close()  # Close the plot so it doesn't show up in prompt

# Step 4: Plot and save density plots silently
data.plot(kind='density', subplots=True, layout=(3,3), sharex=False)
pyplot.savefig("density_plots.png")
pyplot.close()

# Step 5: Convert to NumPy array and extract features/labels
array = data.values
X = array[:, 1:5]  # Features: Sepal/Petal measurements
Y = array[:, 5]    # Target: Species

# Step 6: Split data into training (67%) and testing (33%)
test_size = 0.33
seed = 7
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=test_size, random_state=seed)

# Step 7: Create and train logistic regression model
model = LogisticRegression(max_iter=200)
model.fit(X_train, Y_train)

# Step 8: Evaluate and display accuracy
result = model.score(X_test, Y_test)
print("Accuracy: {:.2f}%".format(result * 100))

# Step 9: Save the trained model to a file
joblib.dump(model, "logistic_model.pkl")

Visualizes the data (and saves plots)

Trains a Logistic Regression model

Evaluates it

Saves the model as logistic_model.pkl

It’s a full training pipeline, ready to be reproduced in any environment that runs Docker. 💪
🔨 Step-by-Step: Build, Tag, and Push to DockerHub

1️⃣ Build the Docker Image
From your project directory:

docker build -t naveen014/24mcr073:latest .

2️⃣ Log in to DockerHub

docker login

3️⃣ Push the Image

docker push naveen014/24mcr073:latest

4️⃣ Then create the Dockerfile

Image description

...

🔧 Documentation: Pushing and Pulling a Docker Image to Docker Hub


📈 45.15 Punkte
🔧 Programmierung

🔧 DockerFile Image Creation and Pushing to DockerHub


📈 40.78 Punkte
🔧 Programmierung

🔧 DockerFile Image Creation and Pushing to DockerHub


📈 40.78 Punkte
🔧 Programmierung

🔧 Dockerizing a Python Machine Learning Model


📈 38.76 Punkte
🔧 Programmierung

🔧 🚀 Getting Started with Docker: From Installation to Pushing Images to Docker Hub


📈 37.44 Punkte
🔧 Programmierung

🔧 Creating a Docker Image and Pushing to DockerHub for a Python ML App


📈 37.26 Punkte
🔧 Programmierung

🔧 Creating a Docker Image and Pushing to DockerHub for a Python ML App


📈 37.26 Punkte
🔧 Programmierung

🔧 Mastering Docker Image Building: A Complete Guide to Creating Efficient Docker Images


📈 34.56 Punkte
🔧 Programmierung

🔧 Mastering Dockerfile Syntax: A Complete Guide for Creating Custom Docker Images


📈 34.15 Punkte
🔧 Programmierung

🔧 Docker Tutorial: Dockerfile, commands, container, images, volume, network, Docker Compose


📈 33.33 Punkte
🔧 Programmierung

🔧 Docker 101: A Guide to Docker Commands, Terminologies & Dockerfile


📈 33.33 Punkte
🔧 Programmierung

🔧 Dockerfile => Docker Images => Docker Container


📈 33.33 Punkte
🔧 Programmierung

🔧 Dockerfile Essentials: Building and Customizing Docker Images for Your Application


📈 33.09 Punkte
🔧 Programmierung

🔧 Building and Publishing a Docker Image for Machine Learning: A Hands-On Experience


📈 32.87 Punkte
🔧 Programmierung

🔧 Building and Publishing a Docker Image for Machine Learning: A Beginner’s Hands-On Experience


📈 32.87 Punkte
🔧 Programmierung

🔧 Understanding Dockerfile: A Guide to Building Efficient Docker Images


📈 31.73 Punkte
🔧 Programmierung

🔧 How to Build a Docker Image from Github and push to Docker Hub using a Jenkins Job


📈 30.92 Punkte
🔧 Programmierung

🎥 Develop your own Machine Learning Model with Azure Machine Learning


📈 30.66 Punkte
🎥 Video | Youtube

🎥 Develop your own Machine Learning Model with Azure Machine Learning


📈 30.66 Punkte
🎥 Video | Youtube

🔧 Push a Docker Image to Docker Hub


📈 29.57 Punkte
🔧 Programmierung

🔧 How to Push Docker Image to Docker Hub


📈 29.57 Punkte
🔧 Programmierung

🔧 Share docker image on docker hub


📈 29.57 Punkte
🔧 Programmierung

🔧 Deploying a Multi-Stage Docker Image to AWS EC2 using Docker Hub


📈 29.57 Punkte
🔧 Programmierung