Compare commits

..

33 Commits

Author SHA1 Message Date
Erik Huelsmann
fe9561801b * Automatic Dockerfile update by release process 2022-08-24 02:52:20 -04:00
Erik Huelsmann
0c80fb46fc * Automatic Dockerfile update by release process 2022-08-10 16:00:30 -04:00
Erik Huelsmann
0f6ceead07 * Automatic Dockerfile update by release process 2022-04-09 10:21:09 -04:00
Erik Huelsmann
9b8dac1b46 Change the hosting location of the LedgerSMB Docker images 2022-01-28 22:53:46 +01:00
Erik Huelsmann
f09fe4e6b1 * Automatic Dockerfile update by release process 2022-01-19 16:52:29 -05:00
Erik Huelsmann
fb16267a93 * Automatic Dockerfile update by release process 2021-12-08 15:33:57 -05:00
Erik Huelsmann
fed8a29266 * Automatic Dockerfile update by release process 2021-10-12 15:35:11 -04:00
Erik Huelsmann
6ddc8da10d Set the reverse proxy address to the default Docker address range 2021-09-17 23:03:40 +02:00
Erik Huelsmann
b46592f2cb Add reverse proxy configuration option 2021-09-17 22:40:42 +02:00
Erik Huelsmann
5717494020 * Automatic Dockerfile update by release process 2021-09-03 14:08:36 -04:00
Erik Huelsmann
6e529873ae Add libclass-accessor-lite-perl dependency explicitly because it fails to build 2021-08-30 01:08:29 +02:00
Erik Huelsmann
13572ee685 Use multi-stage build to derive dependency packages 2021-08-30 00:56:17 +02:00
Erik Huelsmann
2056ad56cb * Automatic Dockerfile update by release process 2021-08-25 16:50:01 -04:00
Erik Huelsmann
3658a14ccd * Automatic Dockerfile update by release process 2021-08-23 07:27:15 -04:00
Erik Huelsmann
f114db8fcb Print commands as they are executed (debugging purposes) 2021-08-13 23:57:07 +02:00
Erik Huelsmann
2849671500 Make the artifact location into a build ARG 2021-08-13 23:43:51 +02:00
Erik Huelsmann
bdebd44ae0 Update README.md 2021-07-10 23:54:48 +02:00
Erik Huelsmann
c95e4b4b9d Update README.md 2021-07-10 23:50:06 +02:00
Erik Huelsmann
7c89b26987 * Automatic Dockerfile update by release process 2021-07-08 18:07:40 -04:00
Erik Huelsmann
cd7f62abc6 * Automatic Dockerfile update by release process 2021-06-14 14:42:45 -04:00
Erik Huelsmann
d518733d23 * Automatic Dockerfile update by release process 2021-06-03 14:41:51 -04:00
Erik Huelsmann
53c4e6ac92 * Automatic Dockerfile update by release process 2021-05-29 15:02:16 -04:00
Erik Huelsmann
78b902ddc9 * Automatic Dockerfile update by release process 2021-05-02 12:54:03 -04:00
Erik Huelsmann
c1fee69d52 * Automatic Dockerfile update by release process 2021-03-21 08:26:45 -04:00
Erik Huelsmann
33d4019521 * Automatic Dockerfile update by release process 2021-01-31 18:28:17 +00:00
Erik Huelsmann
2a138c50f2 * Automatic Dockerfile update by release process 2020-12-14 22:00:15 +00:00
Erik Huelsmann
11baa4c0a0 * Automatic Dockerfile update by release process 2020-11-18 20:39:19 +00:00
Erik Huelsmann
7e914dbfd1 * Automatic Dockerfile update by release process 2020-09-27 18:57:27 +00:00
Erik Huelsmann
1a1d294e31 * Automatic Dockerfile update by release process 2020-09-18 07:49:04 +00:00
Erik Huelsmann
44b544c8ba * Automatic Dockerfile update by release process 2020-09-13 19:20:04 +00:00
Erik Huelsmann
5dc7176b3f * Automatic Dockerfile update by release process 2020-09-04 19:18:29 +00:00
Erik Huelsmann
f25dee9473 * Automatic Dockerfile update by release process 2020-08-28 21:35:51 +00:00
Erik Huelsmann
0332a27535 Re #23: Add dependency on texlive-fonts-recommended 2020-08-24 22:46:32 +02:00
4 changed files with 67 additions and 34 deletions

View File

@@ -1,9 +1,53 @@
FROM debian:stretch-slim
# Build time variables
ARG SRCIMAGE=debian:stretch-slim
FROM $SRCIMAGE AS builder
ARG LSMB_VERSION="1.7.41"
ARG LSMB_DL_DIR="Releases"
ARG ARTIFACT_LOCATION="https://download.ledgersmb.org/f/$LSMB_DL_DIR/$LSMB_VERSION/ledgersmb-$LSMB_VERSION.tar.gz"
RUN set -x ; \
DEBIAN_FRONTEND="noninteractive" apt-get -y update && \
DEBIAN_FRONTEND="noninteractive" apt-get -y upgrade && \
DEBIAN_FRONTEND="noninteractive" apt-get -y install dh-make-perl libmodule-cpanfile-perl git wget && \
apt-file update
RUN set -x ; \
wget --quiet -O /tmp/ledgersmb-$LSMB_VERSION.tar.gz "$ARTIFACT_LOCATION" && \
tar -xzf /tmp/ledgersmb-$LSMB_VERSION.tar.gz --directory /srv && \
rm -f /tmp/ledgersmb-$LSMB_VERSION.tar.gz && \
cd /srv/ledgersmb && \
( ( for lib in $( cpanfile-dump --with-all-features --recommends --no-configure --no-build --no-test ) ; \
do \
if dh-make-perl locate "$lib" 2>/dev/null ; \
then \
: \
else \
echo no : $lib ; \
fi ; \
done ) | grep -v dh-make-perl | grep -v 'not found' | grep -vi 'is in Perl ' | cut -d' ' -f4 | sort | uniq | tee /srv/derived-deps ) && \
cat /srv/derived-deps
#
#
# The real image build starts here
#
#
FROM $SRCIMAGE
MAINTAINER Freelock john@freelock.com
# Build time variables
ARG LSMB_VERSION="1.7.18"
ARG LSMB_VERSION="1.7.41"
ARG LSMB_DL_DIR="Releases"
ARG ARTIFACT_LOCATION="https://download.ledgersmb.org/f/$LSMB_DL_DIR/$LSMB_VERSION/ledgersmb-$LSMB_VERSION.tar.gz"
# Install Perl, Tex, Starman, psql client, and all dependencies
# Without libclass-c3-xs-perl, performance is terribly slow...
@@ -16,12 +60,11 @@ ARG LSMB_DL_DIR="Releases"
# Installing psql client directly from instructions at https://wiki.postgresql.org/wiki/Apt
# That mitigates issues where the PG instance is running a newer version than this container
# for Buster, add:
# libhtml-escape-perl \
# libplack-middleware-builder-conditionals-perl \
# libplack-request-withencoding-perl \
#libversion-compare-perl
RUN echo -n "APT::Install-Recommends \"0\";\nAPT::Install-Suggests \"0\";\n" >> /etc/apt/apt.conf && \
COPY --from=builder /srv/derived-deps /tmp/derived-deps
RUN set -x ; \
echo -n "APT::Install-Recommends \"0\";\nAPT::Install-Suggests \"0\";\n" >> /etc/apt/apt.conf && \
mkdir -p /usr/share/man/man1/ && \
mkdir -p /usr/share/man/man2/ && \
mkdir -p /usr/share/man/man3/ && \
@@ -33,31 +76,10 @@ RUN echo -n "APT::Install-Recommends \"0\";\nAPT::Install-Suggests \"0\";\n" >>
DEBIAN_FRONTEND="noninteractive" apt-get dist-upgrade -y -q && \
DEBIAN_FRONTEND="noninteractive" apt-get -y -q install \
wget ca-certificates gnupg \
libcgi-emulate-psgi-perl libconfig-inifiles-perl \
libdbd-pg-perl libdbi-perl libdata-uuid-perl libdatetime-perl \
libdatetime-format-strptime-perl \
libio-stringy-perl \
libcpanel-json-xs-perl liblist-moreutils-perl \
liblocale-maketext-perl liblocale-maketext-lexicon-perl \
liblog-log4perl-perl libmime-lite-perl libmime-types-perl \
libmath-bigint-gmp-perl libmodule-runtime-perl libmoose-perl \
libmoosex-nonmoose-perl libnumber-format-perl \
libpgobject-perl libpgobject-simple-perl libpgobject-simple-role-perl \
libpgobject-type-bigfloat-perl libpgobject-type-datetime-perl \
libpgobject-type-bytestring-perl libpgobject-util-dbmethod-perl \
libpgobject-util-dbadmin-perl libplack-perl \
libplack-middleware-reverseproxy-perl \
libtemplate-perl libtext-csv-perl libtext-csv-xs-perl \
libtext-markdown-perl libxml-simple-perl \
libnamespace-autoclean-perl \
libfile-find-rule-perl \
libtemplate-plugin-latex-perl libtex-encode-perl \
$( cat /tmp/derived-deps ) \
libclass-c3-xs-perl libclass-accessor-lite-perl \
libnet-cidr-lite-perl \
texlive-latex-recommended \
texlive-latex-recommended texlive-fonts-recommended \
texlive-xetex fonts-liberation \
starman \
libopenoffice-oodoc-perl \
ssmtp \
lsb-release && \
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list && \
@@ -65,7 +87,7 @@ RUN echo -n "APT::Install-Recommends \"0\";\nAPT::Install-Suggests \"0\";\n" >>
DEBIAN_FRONTEND="noninteractive" apt-get -q -y update && \
DEBIAN_FRONTEND="noninteractive" apt-get -q -y install postgresql-client && \
DEBIAN_FRONTEND="noninteractive" apt-get -q -y install git cpanminus make gcc libperl-dev && \
wget --quiet -O /tmp/ledgersmb-$LSMB_VERSION.tar.gz "https://download.ledgersmb.org/f/$LSMB_DL_DIR/$LSMB_VERSION/ledgersmb-$LSMB_VERSION.tar.gz" && \
wget --quiet -O /tmp/ledgersmb-$LSMB_VERSION.tar.gz "$ARTIFACT_LOCATION" && \
tar -xzf /tmp/ledgersmb-$LSMB_VERSION.tar.gz --directory /srv && \
rm -f /tmp/ledgersmb-$LSMB_VERSION.tar.gz && \
cpanm --notest \

View File

@@ -6,7 +6,7 @@ Dockerfile for LedgerSMB Docker image
- `1.8` - Preview version for the 1.8 branch
- `1.7`, `1.7.x`, `latest` - Latest official release from 1.7 branch
- `1.6`, `1.6.x` - Latest official release from 1.6 branch
- `1.6`, `1.6.33` - Last official release from 1.6 branch
- `1.5`, `1.5.30` - Last official release from 1.5 branch
- `1.4`, `1.4.42` - Last official release from 1.4 branch
- `master` - Master branch from git, unstable

View File

@@ -28,7 +28,7 @@ services:
lsmb:
depends_on:
- postgres
image: ledgersmb/ledgersmb:1.7
image: ghcr.io/ledgersmb/ledgersmb:1.7
networks:
- internal
- default
@@ -52,6 +52,15 @@ services:
# SSMTP_AUTH_METHOD:
# SSMTP_USE_STARTTLS:
# SSMTP_FROMLINE_OVERRIDE:
#
#
# The PROXY_IP environment variable lets you set the IP address
# (range) of the reverse proxy used for TLS termination, which forwards
# its requests to this container. When this reverse proxy runs on the
# Docker host, the default below applies. In case the reverse proxy is
# hosted in a separate container, this setting needs to be adjusted.
#
# PROXY_IP: 172.17.0.1/12
# having the dbdata volume is required to persist our
# data between PostgreSQL container updates; without

View File

@@ -16,6 +16,8 @@ default_db = $DEFAULT_DB
[mail]
sendmail = /usr/sbin/ssmtp
[proxy]
ip=${PROXY_IP:-172.17.0.1/12}
EOF
export LSMB_CONFIG_FILE='/tmp/ledgersmb.conf'
fi