Python is still one of most popular high-level languages for writing APIs and various scripts to this day. And, if you are still not dockerizing everything I don’t know what are you waiting for. Here are the steps required to dockerize a Python app.
- Python app
Step 1. Create a
Dockerfile in your Python project directory.
Step 2. Choose a base Docker image. Usually, I go for the alpine versions. For instance:
Step 3. Set the working directory. Let’s call it
Step 4. Now, copy the application code. In this example, I’ll use a file named
COPY app.py requirements.txt ./
Note(s): Don’t forget the
requirements.txt file. You have multiple ways to generate a requirements.txt file. You could run
pip freeze > requirements.txt,
pip list --format=freeze > requirements.txt, or even insert the dependency packages manually if you are not using more than 3 though.
Step 5. Next, install the packages.
RUN pip install --trusted-host pypi.python.org -r requirements.txt
Step 6. Expose the default port. This is more for information / documentation purposes.
Step 7. At last, run the application code.
CMD ["python", "/app/app.py"]
- Related post: Dockerfile: RUN vs ENTRYPOINT vs CMD.
Step 8. Build the Docker image.
docker build -t python-app .
Step 9. Start the container.
docker run -p 5000:5000 python-app
And that’s it! If you get stuck at some step, feel free to leave a comment below and if you find this tutorial useful, follow our official channel on Telegram.