You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/installation/docker.md
+72-8Lines changed: 72 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,52 @@ order: 8
8
8
9
9
Dovecot CE comes with Docker images published at https://hub.docker.com/r/dovecot/dovecot.
10
10
11
+
## Image flavors
12
+
13
+
Currently we provide aarch64 and amd64 architecture for the images. There are three kinds of images:
14
+
15
+
Image naming follows pattern `<VERSION>{,-dev,-root}`, where version can be latest or exact published version.
16
+
17
+
Images are based on Debian slim image, distribution is occasionally upgraded when new versions are released.
18
+
19
+
### dovecot/dovecot:latest
20
+
21
+
This is a hardened rootless image, which runs everything as vmail user, and minimal amount of binaries installed. This image
22
+
uses non-standard ports, see [Listening ports](#listening-ports) for more information.
23
+
24
+
Linux capability `CAP_SYS_CHROOT` is needed for the container, unless chrooting is disabled by placing `no-chroot.conf` drop-in to `conf.d`:
25
+
26
+
```doveconf
27
+
service imap-login {
28
+
chroot =
29
+
}
30
+
31
+
service pop3-login {
32
+
chroot =
33
+
}
34
+
35
+
service submission-login {
36
+
chroot =
37
+
}
38
+
39
+
service managesieve-login {
40
+
chroot =
41
+
}
42
+
43
+
service imap-urlauth-login {
44
+
chroot =
45
+
}
46
+
```
47
+
48
+
### dovecot/dovecot:latest-dev
49
+
50
+
This is the same as latest, but without hardening. It still runs rootless with vmail, and if you want to drop `CAP_SYS_CHROOT`, you still need to add the same configuration drop-in.
51
+
52
+
### dovecot/dovecot:latest-root
53
+
54
+
This image is suitable for running as root, which means there will be different users like `dovenull`, `dovecot` and `vmail` used.
55
+
Also listening ports will be default ports, and not the non-privileged ones.
Dovecot uses TLS certificates from `/etc/dovecot/ssl` directory. The full chain certificate name is expected to be `tls.crt`, and key file `tls.key`.
45
-
46
-
POP3 service is not enabled by default, if you need pop3, place a pop3.conf drop-in to conf.d:
90
+
POP3 service is not enabled by default, if you need pop3, place a `pop3.conf` drop-in to `conf.d`:
47
91
48
-
```
92
+
```doveconf
49
93
protocols {
50
94
pop3 = yes
51
95
}
52
96
```
53
97
54
98
By default imap, submission, lmtp and sieve protocols are enabled.
55
99
100
+
### Authentication
101
+
102
+
The default auth configuration is in `conf.d/auth.conf`, which has
103
+
```doveconf
104
+
passdb static {
105
+
password = $ENV:USER_PASSWORD
106
+
}
107
+
```
108
+
109
+
This is useful only for testing purposes and single-user instances. To configure multiple users or other authentication methods, you need to override this file.
110
+
111
+
### TLS configuration
112
+
113
+
Default certificate is expected at `/etc/dovecot/ssl/tls.crt` and key at `/etc/dovecot/ssl/tls.key`. You can override `conf.d/ssl.conf` to change this.
114
+
115
+
### Complex configuration
116
+
117
+
You can also override the entire `/etc/dovecot/dovecot.conf` file, just make sure you include `/etc/dovecot/vendor.d/rootless.conf` in your configuration either
118
+
direcly, or with `!include` directive. This is not needed if you use the `-root` variant image.
119
+
56
120
## Listening ports
57
121
58
122
Since v2.4.1 ports are exposed as non-privileged ports. You need to map these
59
-
to the ports that you need.
123
+
to the ports that you need. For latest-root image, the ports are standard, and this does not apply.
60
124
61
125
### Exposed protocols
62
126
@@ -65,7 +129,7 @@ to the ports that you need.
65
129
| imap | 31143 |
66
130
| imaps | 31993 |
67
131
| pop3 | 31110 |
68
-
| pop3s |31990|
132
+
| pop3s |31995|
69
133
| submissions | 31465 |
70
134
| submission | 31587 |
71
135
| lmtps | 31024 |
@@ -81,12 +145,12 @@ To run the system fully read-only, use:
0 commit comments