DIND and docker versions

Question about docker version using DIND

What we want to do is execute docker command in CI.

What I’d like, and can’t find, is a list of docker versions.

That is, the examples in documentation says to use this:

integration-test:
 image: docker:19.03.12
 script:
   - docker run whatever

19.03.12 is the latest, perhaps, now. I’d like to keep up with changes.

Where can I find a list of versions?

sample from .gitlab-ci.yml

integration-test:
 image: docker:19.03.12
 stage: test
 tags: [docker]
 only:
   - merge_requests
 script:
   - docker run -e POSTGRES_PASSWORD=postgres -d -p 5432:5432 postgres
   - cd ${CI_PROJECT_DIR}/orm
   - nvm use v15.14.0
   - npm install -y
   - ./tests/integration_tests.bats

I am not sure if I understand your question, but have you looked in the docker hub for the different docker images:

https://hub.docker.com/_/docker?tab=tags&page=1&ordering=last_updated

You seem a bit confused, so I don’t know if my input is relevant or not. Maybe you need to learn what docker actually is?

19.03.12 looks like a (somewhat old - newest is above 20.10) version of docker itself.
Keeping docker itself updated is a task that is completely seperated from GitLab and needs to be done on the runner server (probably with the package system from the distribution it uses).

What you specify in .gitlab-ci.yml is the name and version (separated by : ) of the image you want to run in docker, they can (most often do) have versions numbers that are completely separate from docker itself.

Thank you.