Restored manual Dovecot Build

This commit is contained in:
moo 2022-05-12 11:11:13 +02:00
parent 3425bcfbf0
commit f0e27312f9
2 changed files with 48 additions and 23 deletions

View File

@ -74,7 +74,13 @@ RUN groupadd -g 5000 vmail \
libunicode-string-perl \ libunicode-string-perl \
liburi-perl \ liburi-perl \
libwww-perl \ libwww-perl \
libstemmer-dev \
libexttextcat-dev \
libldap-dev \
libghc-bzlib-dev \
lua-sql-mysql \ lua-sql-mysql \
liblz4-dev \
libzstd-dev \
lua-socket \ lua-socket \
mariadb-client \ mariadb-client \
procps \ procps \
@ -86,12 +92,15 @@ RUN groupadd -g 5000 vmail \
syslog-ng-mod-redis \ syslog-ng-mod-redis \
wget \ wget \
git \ git \
bison \
flex \
build-essential \ build-essential \
autoconf \ autoconf \
automake \ automake \
libtool \ libtool \
make \ make \
libxapian-dev \ libxapian-dev \
default-libmysqlclient-dev \
libicu-dev \ libicu-dev \
zlib1g-dev \ zlib1g-dev \
pkg-config \ pkg-config \
@ -99,30 +108,42 @@ RUN groupadd -g 5000 vmail \
&& dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')" \ && dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')" \
&& wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch" \ && wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch" \
&& chmod +x /usr/local/bin/gosu \ && chmod +x /usr/local/bin/gosu \
&& gosu nobody true \ && gosu nobody true
&& apt-key adv --fetch-keys https://repo.dovecot.org/DOVECOT-REPO-GPG \ # && apt-key adv --fetch-keys https://repo.dovecot.org/DOVECOT-REPO-GPG \
&& echo "deb https://repo.dovecot.org/ce-${DOVECOT}/debian/bullseye bullseye main" > /etc/apt/sources.list.d/dovecot.list \ # && echo "deb https://repo.dovecot.org/ce-${DOVECOT}/debian/bullseye bullseye main" > /etc/apt/sources.list.d/dovecot.list \
&& apt-get update \ # && apt-get update \
&& apt-get -y --no-install-recommends install \ # && apt-get -y --no-install-recommends install \
dovecot-lua \ # dovecot-lua \
dovecot-managesieved \ # dovecot-managesieved \
dovecot-sieve \ # dovecot-sieve \
dovecot-lmtpd \ # dovecot-lmtpd \
dovecot-ldap \ # dovecot-ldap \
dovecot-mysql \ # dovecot-mysql \
dovecot-core \ # dovecot-core \
dovecot-pop3d \ # dovecot-pop3d \
dovecot-imapd \ # dovecot-imapd \
dovecot-dev # dovecot-dev
RUN cd /tmp && git clone https://github.com/dovecot/core.git dovecot && cd dovecot \
&& ./autogen.sh \
&& PANDOC=false ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --with-ssldir=/etc/ssl --enable-maintainer-mode --with-mysql --with-ldap --with-zstd --with-lz4 --with-ssl=openssl --with-notify=inotify --with-bzlib --with-zlib --enable-hardening --with-stemmer --with-textcat --with-icu \
&& make && make install && make clean
RUN cd /tmp && git clone https://github.com/dovecot/pigeonhole && cd pigeonhole \
&& ./autogen.sh \
&& ./configure --with-dovecot=/usr/lib/dovecot --with-managesieve\
&& make && make install && make clean
RUN cd /tmp && wget https://oligarchy.co.uk/xapian/${XAPIAN}/xapian-core-${XAPIAN}.tar.xz && tar xf xapian-core-${XAPIAN}.tar.xz && cd xapian-core-${XAPIAN} \ RUN cd /tmp && wget https://oligarchy.co.uk/xapian/${XAPIAN}/xapian-core-${XAPIAN}.tar.xz && tar xf xapian-core-${XAPIAN}.tar.xz && cd xapian-core-${XAPIAN} \
&& ./configure --prefix=/opt \ && ./configure --prefix=/opt \
&& make && make install && make && make install && make clean
RUN cd /tmp && git clone https://github.com/slusarz/dovecot-fts-flatcurve.git && cd dovecot-fts-flatcurve \ #RUN cd /tmp && git clone https://github.com/slusarz/dovecot-fts-flatcurve.git && cd dovecot-fts-flatcurve \
&& ./autogen.sh \ # && ./autogen.sh \
&& ./configure --with-dovecot=/usr/lib/dovecot \ # && ./configure --with-dovecot=/usr/lib/dovecot \
&& make \ # && make \
&& make install # && make install
RUN pip3 install mysql-connector-python html2text jinja2 redis \ RUN pip3 install mysql-connector-python html2text jinja2 redis \
&& apt-get autoremove --purge -y \ && apt-get autoremove --purge -y \

View File

@ -1,6 +1,10 @@
plugin { plugin {
fts = flatcurve fts = flatcurve
fts_languages = en de
fts_tokenizers = generic email-address
fts_tokenizer_generic = algorithm=simple
# All of these are optional, and indicate the default values. # All of these are optional, and indicate the default values.
# They are listed here for documentation purposes; most people should # They are listed here for documentation purposes; most people should
# not need to define/override in their config. # not need to define/override in their config.
@ -9,7 +13,7 @@ plugin {
fts_flatcurve_min_term_size = 2 fts_flatcurve_min_term_size = 2
fts_flatcurve_optimize_limit = 10 fts_flatcurve_optimize_limit = 10
fts_flatcurve_rotate_size = 5000 fts_flatcurve_rotate_size = 5000
fts_flatcurve_rotate_time = 5000 fts_flatcurve_rotate_time = 5000s
fts_flatcurve_substring_search = no fts_flatcurve_substring_search = no
} }