diff options
author | Gilles Chehade <gilles@poolp.org> | 2019-10-23 19:13:55 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-10-23 19:13:55 +0200 |
commit | eea3cfb96eb5ddaeddeb36a960e4008f58fc629c (patch) | |
tree | 9e736df67f5fb03369d8ae25ef96891a555061bb | |
parent | add missing header (diff) | |
parent | Merge pull request #953 from ngortheone/portable_docker_movearound (diff) | |
download | OpenSMTPD-6.6.0p1.tar.xz OpenSMTPD-6.6.0p1.zip |
Merge pull request #956 from OpenSMTPD/portable6.6.0p1
Merge portable into 6.6.0p1
-rw-r--r-- | Dockerfile | 79 | ||||
-rw-r--r-- | docker/README.md | 24 | ||||
-rw-r--r-- | etc/README.md | 3 |
3 files changed, 71 insertions, 35 deletions
@@ -1,42 +1,44 @@ -FROM alpine:3.9 as build +FROM alpine:3.10 as build WORKDIR /opensmtpd -# libressl is used for testing only RUN apk add --no-cache \ - ca-certificates \ - automake \ autoconf \ - libtool \ - gcc \ - make \ - musl-dev \ + automake \ bison \ + ca-certificates \ + fts-dev \ + gcc \ + libasr-dev \ libevent-dev \ libtool \ - libasr-dev \ - fts-dev \ - zlib-dev \ - libressl-dev \ - libressl + libtool \ + make \ + musl-dev \ + openssl \ + openssl-dev \ + zlib-dev -#For testing -RUN mkdir -p /var/lib/opensmtpd/empty/ && \ - adduser _smtpd -h /var/lib/opensmtpd/empty/ -D -H -s /bin/false && \ - adduser _smtpq -h /var/lib/opensmtpd/empty/ -D -H -s /bin/false && \ - mkdir -p /var/spool/smtpd && \ - chmod 711 /var/spool/smtpd +# For testing +RUN mkdir -p /var/lib/opensmtpd/empty \ + && adduser _smtpd -h /var/lib/opensmtpd/empty/ -D -H -s /bin/false \ + && adduser _smtpq -h /var/lib/opensmtpd/empty/ -D -H -s /bin/false \ + && mkdir -p /var/spool/smtpd \ + && mkdir -p /var/mail \ + && chmod 711 /var/spool/smtpd COPY . /opensmtpd -#build opensmtpd -RUN rm -r /usr/local/ -RUN ./bootstrap && \ - ./configure --with-gnu-ld --sysconfdir=/etc/mail --with-path-empty=/var/lib/opensmtpd/empty/ && \ - make && \ - make install +# build opensmtpd +RUN rm -r /usr/local/ \ + && ./bootstrap \ + && ./configure --with-gnu-ld \ + --sysconfdir=/etc/mail \ + --with-path-empty=/var/lib/opensmtpd/empty \ + && make \ + && make install -FROM alpine:3.9 +FROM alpine:3.10 LABEL maintainer="Arthur Moore <Arthur.Moore.git@cd-net.net>" EXPOSE 25 @@ -50,17 +52,24 @@ WORKDIR /var/spool/smtpd ENTRYPOINT ["smtpd", "-d"] CMD ["-P", "mda"] -RUN apk add --no-cache libressl libevent libasr fts zlib ca-certificates && \ - mkdir -p /var/lib/opensmtpd/empty/ && \ - adduser _smtpd -h /var/lib/opensmtpd/empty/ -D -H -s /bin/false && \ - adduser _smtpq -h /var/lib/opensmtpd/empty/ -D -H -s /bin/false && \ - mkdir -p /etc/mail/ && \ - mkdir -p /var/spool/smtpd && \ - chmod 711 /var/spool/smtpd +RUN apk add --no-cache \ + ca-certificates \ + fts \ + libasr \ + libevent \ + openssl \ + zlib \ + && mkdir -p /var/lib/opensmtpd/empty \ + && adduser _smtpd -h /var/lib/opensmtpd/empty/ -D -H -s /bin/false \ + && adduser _smtpq -h /var/lib/opensmtpd/empty/ -D -H -s /bin/false \ + && mkdir -p /etc/mail \ + && mkdir -p /var/mail \ + && mkdir -p /var/spool/smtpd \ + && chmod 711 /var/spool/smtpd COPY --from=build /usr/local/ /usr/local/ COPY smtpd/smtpd.conf /etc/mail -#OpenSMTPD needs root permissions to open port 25. -#It immediately changes to running as _smtpd after that. +# OpenSMTPD needs root permissions to open port 25. +# It immediately changes to running as _smtpd after that. diff --git a/docker/README.md b/docker/README.md new file mode 100644 index 00000000..0eae21b2 --- /dev/null +++ b/docker/README.md @@ -0,0 +1,24 @@ +# Dockerfiles + +## Disclaimer + +This folder contains dockerfiles that can be used for developing and OpenSMTPD. +These dockerfiles are intended to be used for dev/test cycle and ARE NOT +intended to be a delivery mechanism for end users and should not be published +on external resouces like DockerHub. Dockerfiles in this folder can be used as +a reference for package maintainers of various distributions. + + +## Usage + +For each distribution there is a separate dockerfile with a distro name +suffixed. E.g. `Dockerfile.alpine` is a dockerfile that builds OpenSMTPD in +Alpine Linux environment + +To build: + +`docker build -f docker/Dockerfile.alpine -t opensmtpd-alpine` + + + +...to be continued.. diff --git a/etc/README.md b/etc/README.md new file mode 100644 index 00000000..82a15cb7 --- /dev/null +++ b/etc/README.md @@ -0,0 +1,3 @@ +This directory will contain example OpenSMTPD config files that can be used as +a reference or for testing specific usecases. Tests that are run as part of +CI/CD process in docker containers will utilize these files. |