diff --git a/Containerfile b/Containerfile index ceaac4e..b43a729 100644 --- a/Containerfile +++ b/Containerfile @@ -1,4 +1,4 @@ -FROM docker.io/alpine:3.19 AS builder +FROM docker.io/alpine:3.20 AS builder RUN apk add --no-cache \ php83 \ @@ -15,19 +15,18 @@ RUN apk add --no-cache \ ENV COMPOSER_VERSION=2.6.6 ENV COMPOSER_SHA256_SUM=72600201c73c7c4b218f1c0511b36d8537963e36aafa244757f52309f885b314 -RUN wget https://getcomposer.org/download/$COMPOSER_VERSION/composer.phar -RUN echo "$COMPOSER_SHA256_SUM composer.phar" | sha256sum -c - || exit 1 -RUN mv composer.phar /usr/bin/composer -RUN chmod +x /usr/bin/composer +RUN wget https://getcomposer.org/download/$COMPOSER_VERSION/composer.phar -O /bin/composer +RUN echo "$COMPOSER_SHA256_SUM /bin/composer" | sha256sum -c - || exit 1 +RUN chmod +x /bin/composer -ENV VERSION=1.6.5 -ENV SHA256_SUM=164b72cb78de89d104741ee9090f4024e63bfada43949034844365f3fa70b5fd +ENV VERSION=1.6.7 +ENV SHA256_SUM=cf52515e65b2818cb02fd7a202c766367b8c54d8b7fea27dda9c81aa7ce1d3a6 RUN wget https://github.com/roundcube/roundcubemail/releases/download/$VERSION/roundcubemail-$VERSION-complete.tar.gz RUN echo "$SHA256_SUM roundcubemail-$VERSION-complete.tar.gz" | sha256sum -c - || exit 1 RUN mkdir -p /var/lib/roundcube RUN tar xzf roundcubemail-$VERSION-complete.tar.gz -C /var/lib/roundcube --strip 1 -FROM docker.io/thallian/php8-fpm:3.19-8.3 +FROM docker.io/thallian/php8-fpm:3.20-8.3 RUN apk add --no-cache \ openssl \ diff --git a/README.md b/README.md index bd17ad1..b7bcb42 100644 --- a/README.md +++ b/README.md @@ -1,73 +1,99 @@ -[Roundcube](https://roundcube.net/) webmail interface with postgres backend and oauth login. +[Roundcube](https://roundcube.net/) webmail interface with postgres backend and +oauth login. # Environment Variables + ## DOMAINS + Semicolon seperated list of domains to listen to. ## DB_USER + Name of the database user. ## DB_PASSWORD + Password for the database user. ## DB_HOST + Database host. ## DB_NAME + Database name. ## IMAP_HOST + - default: tls://%n IMAP host to authenticate users against. ## SMTP_HOST + - default: tls://%n SMTP host for sending mails. ## SMTP_PORT + - default: 587 Port for the SMTP host. ## SECRET_KEY + Secret key for session secrets. ## CIPHER_METHOD + - default: AES-256-CBC Encryption algorithm for session secrets. ## OAUTH_PROVIDER_NAME + Name of the oauth provider on the roundcube login page. ## OAUTH_CLIENT_ID + Client id for oauth login. ## OAUTH_CLIENT_SECRET + Client secret for oauth login. ## OAUTH_AUTH_URI + Auth uri for oauth login. -Example for keycloak: `https://example.com/realms/master/protocol/openid-connect/auth` +Example for keycloak: +`https://example.com/realms/master/protocol/openid-connect/auth` ## OAUTH_TOKEN_URI + Token uri for oauth login. -Example for keycloak: `https://example.com/realms/master/protocol/openid-connect/token` +Example for keycloak: +`https://example.com/realms/master/protocol/openid-connect/token` ## OAUTH_IDENTITY_URI + Userinfo uri for oauth login. -Example for keycloak: `https://example.com/realms/master/protocol/openid-connect/userinfo` +Example for keycloak: +`https://example.com/realms/master/protocol/openid-connect/userinfo` +## MANAGESIEVE_HOST + +Where to connect to managesieve. # Ports + - 80 # Capabilities + - CHOWN - DAC_OVERRIDE - NET_BIND_SERVICE diff --git a/rootfs/etc/confd/templates/config.inc.php.tmpl b/rootfs/etc/confd/templates/config.inc.php.tmpl index 27d3c5e..d504c3f 100644 --- a/rootfs/etc/confd/templates/config.inc.php.tmpl +++ b/rootfs/etc/confd/templates/config.inc.php.tmpl @@ -36,7 +36,7 @@ $config['username_domain'] = '%d'; $config['username_domain_forced'] = true; $config['password_charset'] = 'UTF-8'; -$config['plugins'] = array('archive', 'zipdownload'); +$config['plugins'] = array('archive', 'managesieve', 'zipdownload'); $config['spellcheck_engine'] = 'pspell'; $config['default_charset'] = 'UTF-8'; @@ -52,3 +52,4 @@ $config['oauth_scope'] = 'email profile openid'; $config['oauth_auth_parameters'] = []; $config['oauth_identity_fields'] = ['preferred_username']; $config['oauth_login_redirect'] = true; +$config['managesieve_host'] = '{{getenv "MANAGESIEVE_HOST"}}';