mirror of
https://github.com/ledgersmb/ledgersmb-docker.git
synced 2025-04-19 14:47:12 -04:00
Compare commits
No commits in common. "1.12" and "1.11.16" have entirely different histories.
18
.github/workflows/images-cleanup.yml
vendored
18
.github/workflows/images-cleanup.yml
vendored
@ -1,18 +0,0 @@
|
|||||||
name: Docker Image cleanup
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
workflow_dispatch:
|
|
||||||
schedule:
|
|
||||||
# Schedule for five minutes after the hour, every Friday
|
|
||||||
- cron: '10 3 * * 5'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
cleanup:
|
|
||||||
if: github.repository_owner == 'ledgersmb'
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: ghcr.io cleanup action
|
|
||||||
uses: dataaxiom/ghcr-cleanup-action@v1
|
|
||||||
with:
|
|
||||||
packages: ledgersmb
|
|
62
Dockerfile
62
Dockerfile
@ -5,15 +5,15 @@ ARG SRCIMAGE=debian:bookworm-slim
|
|||||||
|
|
||||||
FROM $SRCIMAGE AS builder
|
FROM $SRCIMAGE AS builder
|
||||||
|
|
||||||
ARG LSMB_VERSION="1.12.7"
|
ARG LSMB_VERSION="1.11.16"
|
||||||
ARG LSMB_DL_DIR="Releases"
|
ARG LSMB_DL_DIR="Releases"
|
||||||
ARG ARTIFACT_LOCATION="https://download.ledgersmb.org/f/$LSMB_DL_DIR/$LSMB_VERSION/ledgersmb-$LSMB_VERSION.tar.gz"
|
ARG ARTIFACT_LOCATION="https://download.ledgersmb.org/f/$LSMB_DL_DIR/$LSMB_VERSION/ledgersmb-$LSMB_VERSION.tar.gz"
|
||||||
|
|
||||||
|
|
||||||
RUN set -x ; \
|
RUN set -x ; \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y update && \
|
DEBIAN_FRONTEND="noninteractive" apt-get -y update && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y dist-upgrade && \
|
DEBIAN_FRONTEND="noninteractive" apt-get -y upgrade && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y install dh-make-perl libmodule-cpanfile-perl git wget && \
|
DEBIAN_FRONTEND="noninteractive" apt-get -y install dh-make-perl libmodule-cpanfile-perl git wget && \
|
||||||
apt-file update
|
apt-file update
|
||||||
|
|
||||||
RUN set -x ; \
|
RUN set -x ; \
|
||||||
@ -51,15 +51,17 @@ LABEL org.opencontainers.image.description="LedgerSMB is a full featured double-
|
|||||||
the LedgerSMB project is to bring high quality ERP and accounting capabilities\
|
the LedgerSMB project is to bring high quality ERP and accounting capabilities\
|
||||||
to Small and Midsize Businesses."
|
to Small and Midsize Businesses."
|
||||||
|
|
||||||
ARG LSMB_VERSION="1.12.7"
|
ARG LSMB_VERSION="1.11.16"
|
||||||
ARG LSMB_DL_DIR="Releases"
|
ARG LSMB_DL_DIR="Releases"
|
||||||
ARG ARTIFACT_LOCATION="https://download.ledgersmb.org/f/$LSMB_DL_DIR/$LSMB_VERSION/ledgersmb-$LSMB_VERSION.tar.gz"
|
ARG ARTIFACT_LOCATION="https://download.ledgersmb.org/f/$LSMB_DL_DIR/$LSMB_VERSION/ledgersmb-$LSMB_VERSION.tar.gz"
|
||||||
|
|
||||||
|
|
||||||
### PACKAGE REQUIREMENTS RATIONALE
|
# Install Perl, Tex, Starman, psql client, and all dependencies
|
||||||
#
|
# Without libclass-c3-xs-perl, performance is terribly slow...
|
||||||
# postgresql-client(from apt.postgresql.org): reduces chances running a newer server than this client
|
|
||||||
# fonts-liberation: installed for compatibility with templates from 1.8 and earlier
|
# 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
|
||||||
|
|
||||||
|
|
||||||
COPY --from=builder /srv/derived-deps /tmp/derived-deps
|
COPY --from=builder /srv/derived-deps /tmp/derived-deps
|
||||||
|
|
||||||
@ -73,17 +75,19 @@ RUN set -x ; \
|
|||||||
mkdir -p /usr/share/man/man6/ && \
|
mkdir -p /usr/share/man/man6/ && \
|
||||||
mkdir -p /usr/share/man/man7/ && \
|
mkdir -p /usr/share/man/man7/ && \
|
||||||
mkdir -p /usr/share/man/man8/ && \
|
mkdir -p /usr/share/man/man8/ && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y update && \
|
DEBIAN_FRONTEND="noninteractive" apt-get -y update && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y dist-upgrade && \
|
DEBIAN_FRONTEND="noninteractive" apt-get -y upgrade && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y install \
|
DEBIAN_FRONTEND="noninteractive" apt-get -y install \
|
||||||
wget ca-certificates gnupg iproute2 \
|
wget ca-certificates gnupg iproute2 \
|
||||||
$( cat /tmp/derived-deps ) \
|
$( cat /tmp/derived-deps ) \
|
||||||
|
libclass-c3-xs-perl \
|
||||||
texlive-plain-generic texlive-latex-recommended texlive-fonts-recommended \
|
texlive-plain-generic texlive-latex-recommended texlive-fonts-recommended \
|
||||||
texlive-xetex fonts-liberation \
|
texlive-xetex fonts-liberation \
|
||||||
lsb-release postgresql-common && \
|
lsb-release && \
|
||||||
/usr/share/postgresql-common/pgdg/apt.postgresql.org.sh -y && \
|
echo "deb [signed-by=/etc/apt/keyrings/postgresql.asc] http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y update && \
|
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc > /etc/apt/keyrings/postgresql.asc && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y install postgresql-client && \
|
DEBIAN_FRONTEND="noninteractive" apt-get -y update && \
|
||||||
|
DEBIAN_FRONTEND="noninteractive" apt-get -y install postgresql-client && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get -q -y install git cpanminus make gcc libperl-dev && \
|
DEBIAN_FRONTEND="noninteractive" apt-get -q -y install git cpanminus make gcc libperl-dev && \
|
||||||
wget --quiet -O /tmp/ledgersmb-$LSMB_VERSION.tar.gz "$ARTIFACT_LOCATION" && \
|
wget --quiet -O /tmp/ledgersmb-$LSMB_VERSION.tar.gz "$ARTIFACT_LOCATION" && \
|
||||||
tar -xzf /tmp/ledgersmb-$LSMB_VERSION.tar.gz --directory /srv && \
|
tar -xzf /tmp/ledgersmb-$LSMB_VERSION.tar.gz --directory /srv && \
|
||||||
@ -93,9 +97,9 @@ RUN set -x ; \
|
|||||||
--with-feature=latex-pdf-ps \
|
--with-feature=latex-pdf-ps \
|
||||||
--with-feature=openoffice \
|
--with-feature=openoffice \
|
||||||
--installdeps /srv/ledgersmb/ && \
|
--installdeps /srv/ledgersmb/ && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get purge -q -y git cpanminus make gcc libperl-dev && \
|
apt-get purge -q -y git cpanminus make gcc libperl-dev && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get autoremove -q -y && \
|
apt-get autoremove -q -y && \
|
||||||
DEBIAN_FRONTEND="noninteractive" apt-get clean -q && \
|
apt-get clean -q && \
|
||||||
rm -rf ~/.cpanm/ /var/lib/apt/lists/* /usr/share/man/*
|
rm -rf ~/.cpanm/ /var/lib/apt/lists/* /usr/share/man/*
|
||||||
|
|
||||||
|
|
||||||
@ -108,18 +112,18 @@ WORKDIR /srv/ledgersmb
|
|||||||
## MAIL
|
## MAIL
|
||||||
# '__CONTAINER_GATEWAY__' is a magic value which will be substituted
|
# '__CONTAINER_GATEWAY__' is a magic value which will be substituted
|
||||||
# with the actual gateway IP address
|
# with the actual gateway IP address
|
||||||
ENV LSMB_MAIL_SMTPHOST=__CONTAINER_GATEWAY__
|
ENV LSMB_MAIL_SMTPHOST __CONTAINER_GATEWAY__
|
||||||
#ENV LSMB_MAIL_SMTPPORT=25
|
#ENV LSMB_MAIL_SMTPPORT 25
|
||||||
#ENV LSMB_MAIL_SMTPSENDER_HOSTNAME=(container hostname)
|
#ENV LSMB_MAIL_SMTPSENDER_HOSTNAME (container hostname)
|
||||||
#ENV LSMB_MAIL_SMTPTLS=
|
#ENV LSMB_MAIL_SMTPTLS
|
||||||
#ENV LSMB_MAIL_SMTPUSER=
|
#ENV LSMB_MAIL_SMTPUSER
|
||||||
#ENV LSMB_MAIL_SMTPPASS=
|
#ENV LSMB_MAIL_SMTPPASS
|
||||||
#ENV LSMB_MAIL_SMTPAUTHMECH=
|
#ENV LSMB_MAIL_SMTPAUTHMECH
|
||||||
|
|
||||||
## DATABASE
|
## DATABASE
|
||||||
ENV POSTGRES_HOST=postgres
|
ENV POSTGRES_HOST postgres
|
||||||
ENV POSTGRES_PORT=5432
|
ENV POSTGRES_PORT 5432
|
||||||
ENV DEFAULT_DB=lsmb
|
ENV DEFAULT_DB lsmb
|
||||||
|
|
||||||
COPY start.sh /usr/local/bin/start.sh
|
COPY start.sh /usr/local/bin/start.sh
|
||||||
|
|
||||||
|
@ -16,9 +16,8 @@ Dockerfile for LedgerSMB Docker image
|
|||||||
|
|
||||||
# Supported tags
|
# Supported tags
|
||||||
|
|
||||||
- `1.12`, `1.12.x`, `latest` - Latest official release from the 1.12 branch
|
- `1.11`, `1.11.x`, `latest` - Latest official release from the 1.11 branch
|
||||||
- `1.11`, `1.11.x` - Latest official release from the 1.11 branch
|
- `1.10`, `1.10.x` - Latest official release from the 1.10 branch
|
||||||
- `1.10`, `1.10.38` - Last official release from the 1.10 branch (End-of-Life)
|
|
||||||
- `1.9`, `1.9.30` - Last official release from the 1.9 branch (End-of-Life)
|
- `1.9`, `1.9.30` - Last official release from the 1.9 branch (End-of-Life)
|
||||||
- `1.8`, `1.8.31` - Last official release from the 1.8 branch (End-of-Life)
|
- `1.8`, `1.8.31` - Last official release from the 1.8 branch (End-of-Life)
|
||||||
- `1.7`, `1.7.41` - Last official release from the 1.7 branch (End-of-Life)
|
- `1.7`, `1.7.41` - Last official release from the 1.7 branch (End-of-Life)
|
||||||
|
@ -31,7 +31,7 @@ services:
|
|||||||
lsmb:
|
lsmb:
|
||||||
depends_on:
|
depends_on:
|
||||||
- postgres
|
- postgres
|
||||||
image: ghcr.io/ledgersmb/ledgersmb:1.12
|
image: ghcr.io/ledgersmb/ledgersmb:1.11
|
||||||
# In order to store the configuration outside the image, allowing it to
|
# In order to store the configuration outside the image, allowing it to
|
||||||
# be edited between container restarts, uncomment the section below and
|
# be edited between container restarts, uncomment the section below and
|
||||||
# change the 'source' to the directory where you want the configuration
|
# change the 'source' to the directory where you want the configuration
|
||||||
|
14
start.sh
14
start.sh
@ -68,13 +68,6 @@ if [[ -n "$LSMB_HAVE_DEPRECATED" ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ ! -f ./local/conf/ledgersmb.yaml ]]; then
|
if [[ ! -f ./local/conf/ledgersmb.yaml ]]; then
|
||||||
if [[ "x$LSMB_MAIL_SMTPTLS" == "xyes" ]]; then
|
|
||||||
tls_mode=starttls
|
|
||||||
elif [[ "x$LSMB_MAIL_SMTPTLS" == "xraw" ]]; then
|
|
||||||
tls_mode=ssl
|
|
||||||
else
|
|
||||||
tls_mode=none
|
|
||||||
fi
|
|
||||||
cat <<EOF >./local/conf/ledgersmb.yaml
|
cat <<EOF >./local/conf/ledgersmb.yaml
|
||||||
paths:
|
paths:
|
||||||
\$class: Beam::Wire
|
\$class: Beam::Wire
|
||||||
@ -90,8 +83,8 @@ db:
|
|||||||
|
|
||||||
mail:
|
mail:
|
||||||
transport:
|
transport:
|
||||||
\$class: Email::Sender::Transport::SMTP
|
\$class: LedgerSMB::Mailer::TransportSMTP
|
||||||
ssl: $tls_mode
|
tls: $LSMB_MAIL_SMTPTLS
|
||||||
|
|
||||||
miscellaneous:
|
miscellaneous:
|
||||||
\$class: Beam::Wire
|
\$class: Beam::Wire
|
||||||
@ -147,7 +140,8 @@ EOF
|
|||||||
cat <<EOF >./local/conf/ledgersmb.003.yaml
|
cat <<EOF >./local/conf/ledgersmb.003.yaml
|
||||||
mail:
|
mail:
|
||||||
transport:
|
transport:
|
||||||
sasl_authenticator:
|
sasl_password: ''
|
||||||
|
sasl_username:
|
||||||
\$class: Authen::SASL
|
\$class: Authen::SASL
|
||||||
mechanism: $LSMB_MAIL_SMTPAUTHMECH
|
mechanism: $LSMB_MAIL_SMTPAUTHMECH
|
||||||
callback:
|
callback:
|
||||||
|
Loading…
Reference in New Issue
Block a user