Compare commits

..

9 Commits

Author SHA1 Message Date
Erik Huelsmann
03fb5b21be Adjust 'build' script to publish base and regular images 2025-08-09 14:14:36 +02:00
Erik Huelsmann
c7c36a1583 Rename proxy layer image 2025-08-09 14:11:10 +02:00
Erik Huelsmann
bfe4971587 Ensure relative redirects
When the container port :80 is exposed as :8080 on the host,
nginx redirects to http://localhost:80/login.pl with a relative
path, instead of http://localhost:8080/login.pl; the container
isn't bound to :80, so that request fails...
2025-08-09 14:10:40 +02:00
Erik Huelsmann
1c001cf93a Don't expose the status module
It won't be accessible anyway: the localhost address is the one inside the container...
2025-08-09 14:10:40 +02:00
Erik Huelsmann
df984c92ad Use 'server-start' script generated by the installer instead of repeating ourselves 2025-08-09 14:10:40 +02:00
Erik Huelsmann
599efdc6d9 Rewrite proxy Dockerfile:
* ARCH used to be hard-coded; is now set according to the architecture being built
* Build from the associated LedgerSMB base image (not from 'lsmb-split')
* More deletion of non-required files (/usr/share/doc/*)
* Fewer layers by combining RUN commands
2025-08-09 14:10:40 +02:00
Erik Huelsmann
4522980294 Re-use parent container configuration and startup scripts 2025-08-09 14:10:40 +02:00
Walid Mujahid
b2dffc0ddc feat: provide image with nginx 2025-08-09 14:10:40 +02:00
Erik Huelsmann
acb9ad1bda Add build script to be called by ledgersmb-release-tools/publish 2025-08-09 14:09:56 +02:00
9 changed files with 26 additions and 20 deletions

View File

@ -39,6 +39,7 @@ RUN set -x ; \
cd /srv && \
curl -s -o ledgersmb-installer -L https://get.ledgersmb.org/ledgersmb-installer && \
ARTIFACT_LOCATION="$ARTIFACT_PATH" perl ledgersmb-installer install --yes --log-level=trace $LSMB_VERSION && \
mv /srv/ledgersmb/server-start /usr/local/bin/run.sh && \
rm -rf ~/.cpanm/ /var/lib/apt/lists/* /usr/share/man/*
WORKDIR /srv/ledgersmb
@ -66,7 +67,6 @@ ENV DEFAULT_DB=lsmb
COPY start.sh /usr/local/bin/start.sh
COPY config.sh /usr/local/bin/config.sh
COPY run.sh /usr/local/bin/run.sh
RUN chmod +x /usr/local/bin/start.sh /usr/local/bin/config.sh /usr/local/bin/run.sh && \
mkdir -p /var/www && \

View File

@ -1,9 +0,0 @@
#!/bin/bash
cd /srv/ledgersmb
# ':5762:' suppresses an uninitialized variable warning in starman
# the last colon means "don't connect using tls"; without it, there's a warning
exec starman --listen 0.0.0.0:5762 --workers ${LSMB_WORKERS:-5} \
-I lib -I old/lib \
--preload-app bin/ledgersmb-server.psgi

24
build Executable file
View File

@ -0,0 +1,24 @@
#!/bin/bash
set -euxo pipefail
${DOCKER:-docker} buildx build \
--progress plain \
--platform ${PLATFORM:-linux/amd64,linux/arm64,linux/arm/v7} \
--build-arg "ARTIFACT_PATH=$ARTIFACT_PATH" \
-t ledgersmb/ledgersmb:$BRANCH-base \
-t ledgersmb/ledgersmb:$VERSION-base \
-t ghcr.io/ledgersmb/ledgersmb:$BRANCH-base \
-t ghcr.io/ledgersmb/ledgersmb:$VERSION-base \
${SET_LATEST_TAG:+ -t ledgersmb/ledgersmb:latest-base -t ghcr.io/ledgersmb/ledgersmb:latest-base} \
--push base/
${DOCKER:-docker} buildx build \
--progress plain \
--platform ${PLATFORM:-linux/amd64,linux/arm64,linux/arm/v7} \
-t ledgersmb/ledgersmb:$BRANCH \
-t ledgersmb/ledgersmb:$VERSION \
-t ghcr.io/ledgersmb/ledgersmb:$BRANCH \
-t ghcr.io/ledgersmb/ledgersmb:$VERSION \
${SET_LATEST_TAG:+ -t ledgersmb/ledgersmb:latest -t ghcr.io/ledgersmb/ledgersmb:latest} \
--push proxy/

View File

@ -40,15 +40,6 @@ http {
access_log /dev/stdout;
error_log /dev/stderr info;
# Don't log status polls
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
allow ::1;
deny all;
}
# Configuration files don't exist
location ^~ \.conf$ {
return 404;
@ -60,7 +51,7 @@ http {
}
location = / {
return 301 /login.pl;
return 301 login.pl;
}
# JS & CSS