There are two primary ways to incorporate Docker in your CI/CD workflow.
Run your CI/CD jobs in Docker containers.
You can create CI/CD jobs to do things like test, build, or publish an application. These jobs can run in Docker containers.
For example, you can tell GitLab CI/CD to use a Node image that's hosted on Docker Hub or in the GitLab Container Registry. Your job then runs in a container that's based on the image. The container has all the Node dependencies you need to build your app.
You can create CI/CD jobs to build Docker images and publish them to a container registry.