1
1
mirror of https://github.com/docker-mailserver/docker-mailserver synced 2024-12-18 23:14:11 +01:00
docker-mailserver/docs/content/examples/tutorials/docker-build.md

2.1 KiB

title
Tutorials | Docker Build

Building your own Docker image

Submodules

You'll need to retrieve the git submodules prior to building your own Docker image. From within your copy of the git repo run the following to retrieve the submodules and build the Docker image:

git submodule update --init --recursive
docker build --tag <YOUR CUSTOM IMAGE NAME> .

Or, you can clone and retrieve the submodules in one command:

git clone --recurse-submodules https://github.com/docker-mailserver/docker-mailserver

About Docker

Minimum supported version

We make use of build features that require a recent version of Docker. v23.0 or newer is advised, but earlier releases may work.

Build Arguments (Optional)

The Dockerfile includes several build ARG instructions that can be configured:

  • DOVECOT_COMMUNITY_REPO: Install Dovecot from the community repo instead of from Debian (default = 0)
  • DMS_RELEASE: The image version (default = edge)
  • VCS_REVISION: The git commit hash used for the build (default = unknown)

!!! note

- `DMS_RELEASE` (_when not `edge`_) will be used to check for updates from our GH releases page at runtime due to the default feature [`ENABLE_UPDATE_CHECK=1`][docs::env-update-check].
- Both `DMS_RELEASE` and `VCS_REVISION` are also used with `opencontainers` metadata [`LABEL`][docker-docs::builder-label] instructions.