Introduction
A Dockerfile is a script that having the command and while deployment the docker image container We will get up and running service which configured with commands.
Prerequisites
- Basic knowledge of Docker.
- Basic knowledge of Linux commands.
Step 1: Create a Python3 Directory
To begin, we set up a directory just for Python3-related files by employing the mkdir command.
mkdir python
Step 2: Create a Dockerfile
Now that we have created a folder, we can use the nano editor to create a Dockerfile within that folder:
nano Dockerfile
Paste the following commands.
FROM ubuntu:latest
RUN apt-get update && apt-get upgrade -y
RUN apt-get install -y python3-pip
COPY requirements.txt /app/requirements.txt
WORKDIR /app
RUN pip3 install -r requirements.txt
COPY . /app
EXPOSE 5000
CMD ["python3", "app.py"]
Save and exit from the nano text editor.
This Dockerfile uses the latest version of Ubuntu as the base image. It then runs apt-get update and upgrade to make sure all packages are up to date. It installs python3-pip package using apt-get install. The COPY command copies the requirements.txt file from the host machine to the container. The WORKDIR command sets the current working directory to /app. The next step is to run pip3 install -r requirements.txt to install all the python packages specified in the requirements file. The next COPY command copies all the files from the host machine to the container. The EXPOSE command tells Docker that the container will listen on port 5000. The CMD command runs the python script app.py .
You may want to modify the command according to your needs and also this is a basic setup for running a python app with no additional configurations.
Step 3: Building Python Docker Image
The docker build command is now used to construct the Dockerfile. within which we give our image a custom name (such as python_image) and tag it with the 1.0.0 suffix.
docker build -t python_image:1.0.0 .
The docker images command should be used to verify the image’s existence after it has been constructed.
We can see a list of all the images that have been created or obtained from any public or private registry using the docker images command.
Step 4: Deploy Python App Container
Run the image locally as a container after it has been built:
We use detached mode to run the container continuously in the background. In the docker run command, include -d.
We provide port 5000. To have the server run on localhost, use -p 5000:5000.
As a result, the docker run command also uses the image and the tag that goes with it as input to run the container.
docker run --name custom_python -d -p 5000:5000 python_image:1.0.0
Step 5: Testing Python Test Page
Go to any local browser and type localhost to see if the Apache server is present.
Conclusion
We have successfully build Python custom image from scratch dockerfile on ubuntu 22.04 LTS, If you still have questions, please post them in the comments section below.