Migrating to Docker 2.4.1 not show Mailbox elements
Hi, I'm migrating my physical Dovecot Server 2.2.33.2 to a new 2.4.1 (latest) on Docker container installation. I've got auth process successfully (Mariadb + Wforce included), but I cannot see their Maildir mailbox structure and elements, and logging debug not show errors related.
I detected in my probe account that when I make logging with the new installation, a new "Maildir" directory into Mailbox structure disk is created, as unique difference that I noted, and perhaps would be a symptom, but I'm not sure. ... imap(probe@mydomain)<20><BpSIoIY3GIpYDjFl>: Info: Mailbox INBOX: Mailbox created ...
--- "probe@mydomain" account disk structure --- drwxrwsr-x 7 mail dovecot 4096 dic 19 09:33 .. drwx--S--- 3 dovecot dovecot 4096 jun 14 13:40 Maildir drwxrwsr-x 2 dovecot dovecot 4096 jun 13 20:12 tmp drwxrwsr-x 2 dovecot dovecot 4096 jun 14 12:42 new drwxrwsr-x 2 dovecot dovecot 16384 jun 14 12:47 cur drwx--S--- 3 dovecot dovecot 4096 jun 3 16:02 sieve drwxrwsr-x 5 dovecot dovecot 4096 jun 14 12:57 .Sent drwxrwsr-x 5 dovecot dovecot 4096 nov 9 2020 .spam drwxrwsr-x 5 dovecot dovecot 4096 abr 30 2019 .Drafts drwxrwsr-x 5 dovecot dovecot 4096 jun 14 12:47 .Trash -rw------- 1 dovecot dovecot 212 jul 28 2019 .dovecot.svbin -rw-rw-r-- 1 dovecot dovecot 656 feb 11 02:09 dovecot.index -rw-rw-r-- 1 dovecot dovecot 31832 jun 14 12:47 dovecot.index.cache -rw-rw-r-- 1 dovecot dovecot 26252 jun 14 12:57 dovecot.index.log -rw-rw-r-- 1 dovecot dovecot 7420 ene 16 14:32 dovecot.list.index.log -rw-rw-r-- 1 dovecot dovecot 29 may 4 2019 dovecot-acl-list -rw-rw-r-- 1 dovecot dovecot 10 oct 31 2020 dovecot-keywords -rw------- 1 dovecot dovecot 240 dic 26 16:37 dovecot.mailbox.log -rw------- 1 dovecot dovecot 8 dic 26 16:37 dovecot-uidvalidity -r--r--r-- 1 dovecot dovecot 0 abr 19 2019 dovecot-uidvalidity.5cb9d075 -rw-rw-r-- 1 dovecot dovecot 909 jun 13 20:12 dovecot-uidlist -rw-rw-r-- 1 dovecot dovecot 87 dic 26 16:37 subscriptions
--- old other account disk structure --- drwxrwsr-x 7 mail dovecot 4096 dic 19 09:33 .. drwxrwsr-x 2 dovecot dovecot 4096 oct 8 2024 tmp drwxrwsr-x 2 dovecot dovecot 4096 oct 8 2024 new drwxrwsr-x 2 dovecot dovecot 4096 oct 8 2024 cur drwx--S--- 3 dovecot dovecot 4096 may 27 23:38 sieve drwxrwsr-x 5 dovecot dovecot 4096 abr 2 15:37 .Sent drwxrwsr-x 5 dovecot dovecot 4096 may 26 17:03 .spam drwxrwsr-x 5 dovecot dovecot 4096 abr 30 2019 .Drafts drwxrwsr-x 5 dovecot dovecot 4096 sep 4 2020 .Trash lrwxrwxrwx 1 dovecot dovecot 23 may 4 2019 .dovecot.sieve -> sieve/managesieve.sieve -rw------- 1 dovecot dovecot 264 may 5 2019 .dovecot.svbin -rw-rw-r-- 1 dovecot dovecot 816 oct 17 2019 dovecot.index -rw-rw-r-- 1 dovecot dovecot 30152 abr 2 15:35 dovecot.index.log -rw-rw-r-- 1 dovecot dovecot 30884 abr 2 15:35 dovecot.index.cache -rw-rw-r-- 1 dovecot dovecot 146 may 3 2019 dovecot.index.thread -rw-rw-r-- 1 dovecot dovecot 13 may 2 2019 dovecot-keywords -rw-rw-r-- 1 dovecot dovecot 240 oct 17 2019 dovecot.mailbox.log -rw------- 1 dovecot dovecot 8 oct 17 2019 dovecot-uidvalidity -rw-rw-r-- 1 dovecot dovecot 1773 oct 8 2024 dovecot-uidlist -rw-rw-r-- 1 dovecot dovecot 54 oct 17 2019 subscriptions
This is my new Docker installation config:
2.4.1 (7d8c0e5759): /etc/dovecot/dovecot.conf
Pigeonhole version 2.4.1 (0a86619f)
OS: Linux 4.15.0 x86_64 Debian 12.11
Hostname: midovecot
4 default setting changes since version 2.4.0
dovecot_config_version = 2.4.0 auth_allow_weak_schemes = yes auth_debug_passwords = yes auth_mechanisms = plain login cram-md5 auth_verbose_passwords = yes debug_log_path = /dev/stdout default_internal_group = vmail default_internal_user = vmail default_login_user = vmail deliver_log_format = msgid=%{msgid}: %{message} (subject=%{subject} from=%{from} To=%{to_envelope} size=%{size}) dovecot_storage_version = 2.4.0 first_valid_gid = 119 first_valid_uid = 108 import_environment { CORE_ERROR = %{env:CORE_ERROR} CORE_OUTOFMEM = %{env:CORE_OUTOFMEM} MALLOC_MMAP_THRESHOLD_ = 131072 PATH = %{env:PATH} TZ = %{env:TZ} } instance_name = midovecot last_valid_gid = 119 last_valid_uid = 108 log_debug = category=mail log_path = /dev/stdout mail_driver = maildir mail_gid = vmail mail_home = /var/mail/%{user|lower} mail_log_events = delete undelete expunge copy mailbox_create mailbox_delete mailbox_rename flag_change append mail_plugins { notify = yes mail_log = yes acl = yes quota = yes } mail_uid = vmail mail_utf8_extensions = yes mailbox_list_layout = index mailbox_list_utf8 = yes protocols = imap lmtp sql_driver = mysql state_dir = /run/dovecot service imap-login { client_limit = 100 process_min_avail = 1 inet_listener imap { port = 0 } inet_listener imaps { port = 31993 ssl = yes } } service imap { } service pop3-login { inet_listener pop3 { port = 0 } inet_listener pop3s { port = 0 ssl = yes } } service pop3 { } service submission-login { inet_listener submission { port = 31587 } inet_listener submissions { port = 31465 } } service submission { } service managesieve-login { client_limit = 100 process_min_avail = 1 inet_listener sieve { port = 34190 } inet_listener sieve_deprecated { port = 2000 } } service managesieve { } service lmtp { unix_listener lmtp { } } service auth { unix_listener auth-userdb { } } service auth-worker { } service dict { unix_listener dict { } } service stats { process_min_avail = 1 inet_listener http { port = 9090 } } service doveadm { inet_listener http { port = 8080 ssl = yes } } mysql mimariadb { dbname = xxxxxx password = # hidden, use -P to show it user = xxxxxxx } passdb sql { default_password_scheme = CRYPT query = SELECT username, domain, home AS userdb_home, uid AS userdb_uid, gid AS userdb_gid, (CASE WHEN '%{mechanism}' = 'CRAM-MD5' THEN crampassword ELSE password END) AS password, concat('*:bytes=', quota) AS userdb_quota_rule, concat('*:messages=', quotamsgs) AS userdb_quota_rule3 FROM users WHERE username = '%{user|username}' AND domain = '%{user|domain}' AND active = 'Y' } userdb sql { iterate_query = SELECT username,domain AS user FROM users query = SELECT home, uid, gid, concat('*:bytes=', quota) AS quota_rule, concat('*:messages=', quotamsgs) AS quota_rule3 FROM users WHERE username = '%{ user | username | lower }' AND domain = '%{ user | domain | lower }' } auth_policy { hash_nonce = # hidden, use -P to show it server_api_header = Authorization: Basic d2ZvcmNlOmllcGE server_url = http://miwforce:8084 } ssl_server { cert_file = /dovecot/albertocerts/fullchain.pem key_file = /dovecot/albertocerts/privkey.pem key_password = # hidden, use -P to show it } namespace inbox { inbox = yes separator = / type = private mailbox Drafts { special_use = "\\Drafts" } mailbox Junk { special_use = "\\Junk" } mailbox Trash { auto = subscribe autoexpunge = 10d special_use = "\\Trash" quota_storage_extra = 100M } mailbox Sent { special_use = "\\Sent" } mailbox "Sent Messages" { special_use = "\\Sent" } } namespace shared { prefix = shared/$user/ type = shared } protocol imap { mail_plugins { imap_filter_sieve = yes imap_acl = yes imap_quota = yes } } protocol lmtp { mail_plugins { sieve = yes } } quota "User quota" { storage_size = 1G quota_warning warn-95 { quota_storage_percentage = 95 execute quota-warning { args = 95 %{user} } } quota_warning warn-80 { quota_storage_percentage = 80 execute quota-warning { args = 80 %{user} } } } service quota-warning { executable = script /dovecot/albertobin/quota-warning.sh user = vmail unix_listener quota-warning { user = vmail } }
Best Regards, Alberto
On 14/06/2025 15:06 EEST alberto via dovecot <dovecot@dovecot.org> wrote:
Hi, I'm migrating my physical Dovecot Server 2.2.33.2 to a new 2.4.1 (latest) on Docker container installation. I've got auth process successfully (Mariadb + Wforce included), but I cannot see their Maildir mailbox structure and elements, and logging debug not show errors related.
I detected in my probe account that when I make logging with the new installation, a new "Maildir" directory into Mailbox structure disk is created, as unique difference that I noted, and perhaps would be a symptom, but I'm not sure. ... imap(probe@mydomain)<20><BpSIoIY3GIpYDjFl>: Info: Mailbox INBOX: Mailbox created ...
Can you set
log_debug=cateogory=mail
then do
doveadm exec imap -u probe@mydomain SELECT INBOX LOGOUT
and send output?
Aki
El 14/6/25 a las 14:35, Aki Tuomi via dovecot escribió:
Can you set
log_debug=cateogory=mail
then do
doveadm exec imap -u probe@mydomain SELECT INBOX LOGOUT
and send output?
Aki
Hi Aki,
Comand fail...
vmail@midovecot:/$ doveadm exec imap -u probe@mydomain
- PREAUTH [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE REPLACE SNIPPET=FUZZY PREVIEW=FUZZY PREVIEW SPECIAL-USE STATUS=SIZE SAVEDATE COMPRESS=DEFLATE INPROGRESS NOTIFY LITERAL+ UTF8=ACCEPT FILTER=SIEVE QUOTA ACL RIGHTS=texk LIST-MYRIGHTS] Logged in as probe@mydomain SELECT INBOX SELECT BAD Error in IMAP command INBOX: Unknown command (0.001 + 0.000 secs). LOGOUT LOGOUT BAD Error in IMAP command: Invalid command name (0.001 + 0.000 secs).
Regards,
On 14/06/2025 19:05 EEST alberto via dovecot <dovecot@dovecot.org> wrote:
El 14/6/25 a las 14:35, Aki Tuomi via dovecot escribió:
Can you set
log_debug=cateogory=mail
then do
doveadm exec imap -u probe@mydomain SELECT INBOX LOGOUT
and send output?
Aki
Hi Aki,
Comand fail...
vmail@midovecot:/$ doveadm exec imap -u probe@mydomain
- PREAUTH [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE REPLACE SNIPPET=FUZZY PREVIEW=FUZZY PREVIEW SPECIAL-USE STATUS=SIZE SAVEDATE COMPRESS=DEFLATE INPROGRESS NOTIFY LITERAL+ UTF8=ACCEPT FILTER=SIEVE QUOTA ACL RIGHTS=texk LIST-MYRIGHTS] Logged in as probe@mydomain SELECT INBOX SELECT BAD Error in IMAP command INBOX: Unknown command (0.001 + 0.000 secs). LOGOUT LOGOUT BAD Error in IMAP command: Invalid command name (0.001 + 0.000 secs).
Regards,
Hi,
all IMAP commands are TAG CMD ARGS, so try
1 SELECT INBOX 2 LOGOUT
Aki
El 14/6/25 a las 18:59, Aki Tuomi escribió: ...
all IMAP commands are TAG CMD ARGS, so try
1 SELECT INBOX 2 LOGOUT
Aki
Ups, it's true...
- PREAUTH [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE REPLACE SNIPPET=FUZZY PREVIEW=FUZZY PREVIEW SPECIAL-USE STATUS=SIZE SAVEDATE COMPRESS=DEFLATE INPROGRESS NOTIFY LITERAL+ UTF8=ACCEPT FILTER=SIEVE QUOTA ACL RIGHTS=texk LIST-MYRIGHTS] Logged in as probe@mydomain 1 SELECT INBOX
- FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
- OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)] Flags permitted.
- 0 EXISTS
- 0 RECENT
- OK [UIDVALIDITY 1749901219] UIDs valid
- OK [UIDNEXT 1] Predicted next UID 1 OK [READ-WRITE] Select completed (0.006 + 0.000 + 0.005 secs). 2 LOGOUT
- BYE Logging out 2 OK Logout completed (0.001 + 0.000 secs). imap(probe@mydomain)<29><nhJjIuVvTmgdAAAACkIHhA>: Info: Disconnected: Logged out in=23 out=912 deleted=0 expunged=0 trashed=0 hdr_count=0 hdr_bytes=0 body_count=0 body_bytes=0
Alberto
On 15/06/2025 10:05 EEST alberto via dovecot <dovecot@dovecot.org> wrote:
El 14/6/25 a las 18:59, Aki Tuomi escribió: ...
all IMAP commands are TAG CMD ARGS, so try
1 SELECT INBOX 2 LOGOUT
Aki
Ups, it's true...
- PREAUTH [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE REPLACE SNIPPET=FUZZY PREVIEW=FUZZY PREVIEW SPECIAL-USE STATUS=SIZE SAVEDATE COMPRESS=DEFLATE INPROGRESS NOTIFY LITERAL+ UTF8=ACCEPT FILTER=SIEVE QUOTA ACL RIGHTS=texk LIST-MYRIGHTS] Logged in as probe@mydomain 1 SELECT INBOX
- FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
- OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)] Flags permitted.
- 0 EXISTS
- 0 RECENT
- OK [UIDVALIDITY 1749901219] UIDs valid
- OK [UIDNEXT 1] Predicted next UID 1 OK [READ-WRITE] Select completed (0.006 + 0.000 + 0.005 secs). 2 LOGOUT
- BYE Logging out 2 OK Logout completed (0.001 + 0.000 secs). imap(probe@mydomain)<29><nhJjIuVvTmgdAAAACkIHhA>: Info: Disconnected: Logged out in=23 out=912 deleted=0 expunged=0 trashed=0 hdr_count=0 hdr_bytes=0 body_count=0 body_bytes=0
Alberto
Did you remember to add the log_debug=category=mail (or =debug)?
Aki
El 15/6/25 a las 17:30, Aki Tuomi via dovecot escribió:
Did you remember to add the log_debug=category=mail (or =debug)? Aki
Yes Aki,
Is active already...
#docker exec -it midovecot doveconf | grep log_debug log_debug = category=mail
In my initial doveconf appears too.
Regards,
Alberto
On 15/06/2025 19:42 EEST alberto via dovecot <dovecot@dovecot.org> wrote:
El 15/6/25 a las 17:30, Aki Tuomi via dovecot escribió:
Did you remember to add the log_debug=category=mail (or =debug)? Aki
Yes Aki,
Is active already...
#docker exec -it midovecot doveconf | grep log_debug log_debug = category=mail
In my initial doveconf appears too.
Regards,
Alberto
Was there any debug logging for that session in your log files because they seem to be missing from your email.
Aki
El 15/6/25 a las 18:49, Aki Tuomi via dovecot escribió:
Was there any debug logging for that session in your log files because they seem to be missing from your email.
Aki
Log file output, OK
Sorry,
Attach output log session...
20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth: Debug: conn unix:/run/dovecot/auth-userdb (pid=49,uid=108): Server accepted connection (fd=19) 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth: Debug: master in: USER#0111#011probe@mydomain#011protocol=imap 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth(probe@mydomain): Debug: sql: Performing userdb lookup 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth-worker(39): Debug: conn unix:auth-worker (pid=13,uid=108): auth-worker<4>: Handling USER request 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth-worker(probe@mydomain)<39>: request [4]: Debug: sql: Performing userdb lookup 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth-worker(probe@mydomain)<39>: request [4]: Debug: sql: SELECT home, uid, gid, concat('*:bytes=', quota) AS quota_rule, concat('*:messages=', quotamsgs) AS quota_rule3 FROM users WHERE username = 'probe' AND domain = 'mydomain' 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth-worker(39): Debug: mysql(mimariadb): Finished query 'SELECT home, uid, gid, concat('*:bytes=', quota) AS quota_rule, concat('*:messages=', quotamsgs) AS quota_rule3 FROM users WHERE username = 'probe' AND domain = 'mydomain'' in 1 msecs 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth-worker(probe@mydomain)<39>: request [4]: Debug: sql: Finished userdb lookup 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth-worker(39): Debug: conn unix:auth-worker (pid=13,uid=108): auth-worker<4>: Finished 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth(probe@mydomain): Debug: sql: Finished userdb lookup 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth: Debug: userdb out: USER#0111#011probe@mydomain#011home=/var/mail/buzones/probe#011uid=108#011gid=119#011quota_rule=*:bytes=1073741824#011quota_rule3=*:messages=100000 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth: Debug: auth-worker: Disconnected: Connection closed (fd=23) 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth-worker(39): Debug: conn unix:auth-worker (pid=13,uid=108): Disconnected: Connection closed (fd=-1) 20250615-17:11:05 docker_dovecot[666]: Jun 15 19:11:05 auth-worker(39): Debug: mysql(mimariadb): Connection finished (queries=4, slow queries=0) 20250615-17:11:12 docker_dovecot[666]: Jun 15 19:11:12 auth: Debug: conn unix:/run/dovecot/auth-userdb (pid=49,uid=108): auth-master client: Disconnected: Connection closed (fd=19) (created 6612 msecs ago, handshake 6611 msecs ago)
Regards,
Alberto
participants (2)
-
Aki Tuomi
-
alberto