The Building Blocks – Detailed Structure of a Dockerfile
# Use an official Python runtime as a parent image
FROM python:3.9-slim
# Set the working directory in the container
WORKDIR /app
# Copy the current directory contents into the container at /app
COPY . /app
# Install any needed packages specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt
# 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", "app.py"]The FROM Instruction: Choosing the Foundation
FROM Instruction: Choosing the FoundationThe LABEL Instruction: Adding Metadata (Optional)
LABEL Instruction: Adding Metadata (Optional)The RUN Instruction: Building the Layers
RUN Instruction: Building the LayersThe COPY and ADD Instructions: Bringing in Ingredients
COPY and ADD Instructions: Bringing in IngredientsThe WORKDIR Instruction: Setting the Workspace
WORKDIR Instruction: Setting the WorkspaceThe CMD and ENTRYPOINT Instructions: The Final Touch
CMD and ENTRYPOINT Instructions: The Final TouchBreakdown of the Dockerfile:
Example Flask Application (app.py):
app.py):Example requirements.txt:
requirements.txt:Building and Running the Docker Image:
Last updated