Roundcube im Docker
Y tho?
- nginx auf der main soll nur static files ausliefern, codeexec bitte nur isoliert vom rest
- roundcube ist so mittel zu updaten und kann auf eine eigene Sammlung spannender CVEs zurückbloclen
Umsetzung
docker-compose.yml
Die dockerfile liegt unter /home/brot/devel/minad-roundcube-docker-compose
services:
roundcubemail:
image: roundcube/roundcubemail:latest
container_name: roundcubemail
volumes:
- ./data/config/:/var/roundcube/config
- ./data/plugins:/var/www/html/plugins
- ./db/sqlite:/var/roundcube/db
ports:
- 49003:80
environment:
- ROUNDCUBEMAIL_DEFAULT_HOST=tls://mail.minad.de
- ROUNDCUBEMAIL_SMTP_SERVER=tls://mail.minad.de
- ROUNDCUBEMAIL_USERNAME_DOMAIN=minad.de
extra_hosts:
- "mail.minad.de:host-gateway"
Die extra_hosts sorgt dafür dass die Zertifikate weiterhin auf den korrekten Namen laufen, mailserver ist zwar "mail.minad.de" aber die User sind alle "@minad.de".
Import der vorherigen Userdaten
Die "gesammelten Adressen" liegen von der ursprünglichen Installation noch in der PostgreSQL Datenbank. Möchte jemand jetzt seine gesammelten Adressen behalten, müssen diese in die sqlite-DB im Container importiert werden.
- su psql -s /bin/bash
- psql roundcube
roundcubemail=# Copy( select * from collected_addresses where user_id = 28) To '/tmp/collected_addresses_uid_28.csv' With CSV DELIMITER ',' HEADER; COPY 219sed 's/\,28\,/\,4\,/g' /tmp/collected_addresses_uid_28.csv > /tmp/collected_addresses_uid_4.csvsudo sqlite3 sqlite.db.mode csv.import /tmp/collected_addresses_uid_4.csv collected_addresses