great video about dockers:
https://www.youtube.com/watch?v=Tyy1BUEmhwg
Steps to build and run Docker
in general, the steps are:

- develop the project (for a simple example, you can download an example of a node-express server from GitHub here )
- write Dockerfile and .dockerignore
- The Dockerfile is essentially the build instructions to build the image.
- Dockerfile consists of specific commands that guide you on how to build a specific Docker image.
- dockerignore - Using this file, you can specify ignore rules and exceptions from these rules for files and folders, that won’t be included in the build context and thus won’t be packed into an archive and uploaded to the Docker server.
FROM node:alpine
WORKDIR = /usr/app
COPY package.json .
RUN npm install
COPY . .
CMD [ "npm", "run", "start"]
- run the script to build the image with the command:
node_modules
Dockerfile
docker build -t express-app **.**
- we can see that we built the image successfully with the command:
docker images

- or we can view our images at the Docker Desktop application:

- after building the image, we can run it in order to build the container with the command: