- How to build the images
- Update an old Docker image with new upstream docs content
- Porting new website changes to old versions
The following Dockerfiles are used.
|Contains all the dependencies that are needed to build the website. If the gems are updated and |
|Base image to build the docs website. It uses |
|Base image to use for building documentation archives. It uses |
|Contains all the versions of the website in one archive. It copies all generated HTML files from every version in one location.|
Although build images are built automatically via GitLab CI/CD, you can build and tag all tooling images locally:
- Make sure you have Docker installed.
- Make sure you’re in the
dockerfiles/directory of the
Build the images:
docker build -t registry.gitlab.com/gitlab-org/gitlab-docs:bootstrap -f Dockerfile.bootstrap ../ docker build -t registry.gitlab.com/gitlab-org/gitlab-docs:builder-onbuild -f Dockerfile.builder.onbuild ../ docker build -t registry.gitlab.com/gitlab-org/gitlab-docs:nginx-onbuild -f Dockerfile.nginx.onbuild ../
For each image, there’s a manual job under the
images stage in
.gitlab-ci.yml which can be invoked at any time.
If there are any changes to any of the stable branches of the products that are
not included in the single Docker image, just rerun the pipeline (
for the version in question.
The website keeps changing and being improved. In order to consolidate those changes to the stable branches, we’d need to pick certain changes from time to time.
If this is not possible or there are many changes, merge main into them:
git branch 12.0 git fetch origin main git merge origin/main