Compare commits

..

31 Commits

Author SHA1 Message Date
John Locke
308171c708 1.4.37 2017-01-08 11:00:28 -08:00
John Locke
b549b8a143 1.4.36 2016-12-12 08:40:19 -08:00
John Locke
9cda9c1dd3 1.4.34 2016-10-15 09:48:43 -07:00
John Locke
7761c46712 Set correct ssmtp path 2016-09-25 10:54:26 -07:00
John Locke
3bfa2a5ae3 1.4.33 2016-08-20 09:01:16 -07:00
John Locke
51f3dc8ab8 Add support for #4 - Make Postgres port configurable at run time 2016-08-20 08:58:19 -07:00
John Locke
2629d4052f r1.4.1 2016-07-31 08:28:38 -07:00
John Locke
c022a84d14 1.4.30 2016-07-24 08:07:26 -07:00
John Locke
2add82e070 Update for 1.4.29, streamlined install process 2016-05-30 08:52:19 -07:00
John Locke
beab963859 Add LaTeX::Driver to image. 2016-05-03 10:17:26 -07:00
John Locke
6772ccbe4d Update version to 1.4.28 2016-05-03 08:22:58 -07:00
John Locke
b7ac6ef4cb Update version to 1.4.27 2016-04-10 06:23:53 -07:00
John Locke
ddd44782c7 v1.4.26 2016-03-12 11:30:34 -08:00
John Locke
4448e9b270 Version 1.4.25 2016-02-18 13:15:50 -08:00
John Locke
3b3613dd13 Add xetex back to the container, to support pdf invoices 2016-02-14 09:53:58 -08:00
John Locke
9a789a8032 Removed missing package. 2016-02-05 13:39:17 -08:00
John Locke
d61ce704c2 Tag new 1.4 version 2016-02-05 13:36:54 -08:00
John Locke
048e003a43 Correct latex dependencies 2016-02-05 11:06:14 -08:00
John Locke
3e3915cfc9 Create 1.4.22 tag 2016-01-02 22:48:15 -08:00
John Locke
30efe577bb Fix grep flag 2015-11-19 12:01:03 -08:00
John Locke
052557897e Patch from dcg: detect /etc/ssmtp.conf changes inside update script, instead of touching a /tmp file 2015-11-19 11:59:35 -08:00
John Locke
0e50f0bada Install texlive-xetex to support xelatex 2015-11-01 09:24:48 -08:00
John Locke
d2faf23967 Try adding an explicit /tmp dir creation to work around an aufs bug 2015-09-21 09:09:17 -07:00
John Locke
ba69402221 Fix dependencies for LaTeX in Dockerfile for 1.4 -- add libtex-encode-perl, remove obsolete libnet-tclink-perl 2015-09-18 14:06:31 -07:00
John Locke
46039f99e9 Change base to Perl:5, add CGI::Compile via cpan 2015-08-28 10:24:52 -07:00
John Locke
f2a7c0ada6 Add devel-trace to image 2015-08-28 10:21:54 -07:00
John Locke
890f0c4931 Update readme for versions built 2015-08-01 10:11:35 -07:00
John Locke
29ff9a39ab README improvements 2015-07-05 13:44:47 -07:00
John Locke
4a4a964975 Fix args for prepare-company-database.pl 2015-07-05 12:17:13 -07:00
John Locke
65bb0d35ff Use create-company-database script for test data creation 2015-07-05 11:48:48 -07:00
John Locke
7f0a677a09 Doc fixes 2015-07-05 09:08:03 -07:00
5 changed files with 124 additions and 295 deletions

View File

@@ -1,76 +1,60 @@
FROM debian:jessie-slim
FROM perl:5
MAINTAINER Freelock john@freelock.com
# Build time variables
ENV LSMB_VERSION 1.5.30
# Install Perl, Tex, Starman, psql client, and all dependencies
# Without libclass-c3-xs-perl, performance is terribly slow...
# 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
RUN 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/ && \
mkdir -p /usr/share/man/man4/ && \
mkdir -p /usr/share/man/man5/ && \
mkdir -p /usr/share/man/man6/ && \
mkdir -p /usr/share/man/man7/ && \
DEBIAN_FRONTEND=noninteractive apt-get update && \
apt-get dist-upgrade -y && apt-get -y install \
curl wget ca-certificates \
libcgi-emulate-psgi-perl libcgi-simple-perl libconfig-inifiles-perl \
libdbd-pg-perl libdbi-perl libdatetime-perl \
libdatetime-format-strptime-perl libdigest-md5-perl \
libfile-mimeinfo-perl libjson-xs-perl libjson-perl \
liblocale-maketext-perl liblocale-maketext-lexicon-perl \
liblog-log4perl-perl libmime-base64-perl libmime-lite-perl \
libmath-bigint-gmp-perl libmoose-perl libnumber-format-perl \
libpgobject-perl libpgobject-simple-perl libpgobject-simple-role-perl \
libpgobject-util-dbmethod-perl libplack-perl libtemplate-perl \
libnamespace-autoclean-perl \
libtemplate-plugin-latex-perl libtex-encode-perl \
libmoosex-nonmoose-perl libclass-c3-xs-perl \
texlive-latex-recommended \
texlive-xetex fonts-liberation \
RUN DEBIAN_FRONTENT=noninteractive && \
apt-get update && apt-get -y install \
git \
libdatetime-perl libdbi-perl libdbd-pg-perl \
libcgi-simple-perl libtemplate-perl libmime-lite-perl \
liblocale-maketext-lexicon-perl libtest-exception-perl \
libtest-trap-perl liblog-log4perl-perl libmath-bigint-gmp-perl \
libfile-mimeinfo-perl libtemplate-plugin-number-format-perl \
libdatetime-format-strptime-perl libconfig-general-perl \
libdatetime-format-strptime-perl libio-stringy-perl libmoose-perl \
libconfig-inifiles-perl libnamespace-autoclean-perl \
libcarp-always-perl libjson-perl \
libtemplate-plugin-latex-perl texlive-latex-recommended \
texlive-latex-base texlive-latex-extra \
texlive-xetex \
libxml-twig-perl \
libtex-encode-perl \
libdevel-trace-perl \
starman \
libopenoffice-oodoc-perl \
postgresql-client \
ssmtp \
lsb-release && \
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list && \
(wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -) && \
DEBIAN_FRONTEND="noninteractive" apt-get -y update && \
DEBIAN_FRONTEND="noninteractive" apt-get -y install postgresql-client && \
DEBIAN_FRONTEND=noninteractive apt-get -y install git cpanminus make gcc libperl-dev && \
curl -Lo /tmp/ledgersmb-$LSMB_VERSION.tar.gz "https://download.ledgersmb.org/f/Releases/$LSMB_VERSION/ledgersmb-$LSMB_VERSION.tar.gz" && \
tar -xvzf /tmp/ledgersmb-$LSMB_VERSION.tar.gz --directory /srv && \
rm -f /tmp/ledgersmb-$LSMB_VERSION.tar.gz && \
cpanm --quiet --notest \
--with-feature=starman \
--with-feature=latex-pdf-ps \
--with-feature=openoffice \
--installdeps /srv/ledgersmb/ && \
apt-get purge -y git cpanminus make gcc libperl-dev && \
apt-get autoremove -y && \
apt-get autoclean && \
rm -rf ~/.cpanm/ && \
rm -rf /var/lib/apt/lists/* /usr/share/man/*
postgresql-client-9.4 \
ssmtp
# Build time variables
ENV LSMB_VERSION 1.4.37
# Install LedgerSMB
RUN cd /srv && \
git clone -b $LSMB_VERSION https://github.com/ledgersmb/LedgerSMB.git ledgersmb
WORKDIR /srv/ledgersmb
# master requirements
# 1.4.29+ requirements
RUN cpanm --quiet --notest \
--with-feature=starman \
--with-feature=latex-pdf-ps \
--with-feature=openoffice \
--installdeps .
#RUN sed -i \
# -e "s/short_open_tag = Off/short_open_tag = On/g" \
# -e "s/post_max_size = 8M/post_max_size = 20M/g" \
# -e "s!^;sendmail_path =.*\$!sendmail_path = /usr/sbin/ssmtp -t!g" \
# /etc/php5/fpm/php.ini && \
# Configure outgoing mail to use host, other run time variable defaults
## sSMTP
ENV SSMTP_ROOT ar@example.com
ENV SSMTP_MAILHUB 172.17.0.1
ENV SSMTP_HOSTNAME 172.17.0.1
ENV SSMTP_MAILHUB 172.17.42.1
ENV SSMTP_HOSTNAME 172.17.42.1
#ENV SSMTP_USE_STARTTLS
#ENV SSMTP_AUTH_USER
#ENV SSMTP_AUTH_PASS
@@ -81,11 +65,15 @@ ENV POSTGRES_HOST postgres
ENV POSTGRES_PORT 5432
ENV DEFAULT_DB lsmb
COPY start.sh /usr/local/bin/start.sh
COPY update_ssmtp.sh /usr/local/bin/update_ssmtp.sh
COPY start.sh /usr/bin/start.sh
COPY update_ssmtp.sh /usr/bin/update_ssmtp.sh
#RUN cpanm \
# CGI::Compile
RUN chown www-data /etc/ssmtp /etc/ssmtp/ssmtp.conf && \
chmod +x /usr/local/bin/update_ssmtp.sh /usr/local/bin/start.sh && \
chmod +x /usr/bin/update_ssmtp.sh /usr/bin/start.sh && \
mkdir -p /var/www
# Work around an aufs bug related to directory permissions:
@@ -93,7 +81,7 @@ RUN mkdir -p /tmp && \
chmod 1777 /tmp
# Internal Port Expose
EXPOSE 5762
EXPOSE 5000
#USER www-data
USER www-data
CMD ["start.sh"]

178
README.md
View File

@@ -1,183 +1,119 @@
# ledgersmb-docker
# ledgersmb-docker - EXPERIMENTAL
Dockerfile for LedgerSMB Docker image
# Supported tags
This is a work in progress to make a docker image for running LedgerSMB. It should not be relied upon for production use!
- `1.5`, `1.5.x`, `latest` - Latest release tarball from 1.5 branch
- `1.4`, `1.4.x` - Latest tagged release of git 1.4 branch
- `master` - Master branch from git, unstable
- `master-dev`, `1.5-dev` - Containers to kick off a development setup
# Supported tags and respective `Dockerfile` links
- `1.5`, `dev-master` - Master branch, unstable
- `1.4`, `latest` - Tip of git 1.4 branch
- `1.3` - Latest 1.3.x release
# What is LedgerSMB?
LedgerSMB is a user-friendly accounting and ERP solution for small to
mid-size businesses. It comes with support for many languages and support
for different locales.
The project aims to be the solution a start-up never outgrows.
The LedgerSMB project's priority is to provide an extremely capable yet user-friendly accounting and ERP solution to small to mid-size businesses in all locales where there is interest in using the software. The focus on small to mid-size businesses offers an opportunity to provide a positive user experience in ways which are not present in larger organizations. LedgerSMB ought to strive to be both the ideal SMB accounting/ERP package and also a solution that a start-up will never outgrow. The goals mentioned above will help us provide this ideal solution by allowing us to focus both on technical architecture and on user experience.
# How is this image designed to be used?
This image is designed to be used in conjunction with a running PostgreSQL
instance (such as may be provided through a separate image).
This Docker image is built to provide a self-contained LedgerSMB instance. To be functional, you need to connect it to a running Postgres installation. The official Postgres container will work as is, if you link it to the LedgerSMB instance at startup, or you can provide environment variables to an appropriate Postgres server.
This image exposes port 5762 running a Starman HTTP application server. We
do not recommend exposing this port publicly, because
LedgerSMB provides an http interface built on Starman out of the box, listening on port 5000. We do not recommend exposing this port, because we strongly recommend encrypting all connections using SSL/TLS. For production use, we recommend running a web server configured with SSL, such as Nginx or Apache, and proxying connections to LedgerSMB.
1. The Starman author recommends it
2. We strongly recommend TLS encryption of all application traffic
The other services you will need to put this in production are an SMTP gateway (set environment variables for SSMTP at container startup) and optionally a local print server (e.g. CUPS) installation. The print service is not currently supported in this Docker image, but pull requests are welcomed ;-)
While the exposed port can be used for quick evaluation, it's recommended
to add the TLS layer by applying Nginx or Apache as reverse proxy.
Enabling optional functionalities such as outgoing e-mail and printing
could require additional setup of a mail service or CUPS printer service.
# Quickstart
The quickest way to get this image up and running is by using the
`docker-compose` file available through the GitHub repository at:
https://github.com/ledgersmb/ledgersmb-docker/blob/1.5/docker-compose.yml
which sets up both this image and a supporting database image for
production purposes (i.e. with persistent (database) data, with the
exception of one thing: setting up an Nginx or Apache reverse proxy
with TLS 1.2 support -- a requirement if you want to access your
installation over any type of network.
# How to use this image
## Start a postgres instance
```plain
$ docker run -d --name postgres \
-e POSTGRES_PASSWORD=mysecretpassword \
postgres:latest
```
docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d postgres
BEWARE: The command above creates a container with the database data stored
*inside* the container. Upon removal of the container, the database data will
be removed too!
This image includes `EXPOSE 5432` (the postgres port), so standard container linking will make it automatically available to the linked containers. The default `postgres` user and database are created in the entrypoint with `initdb`.
To prevent destruction of the database data upon replacement of the container,
please use these commands instead:
```plain
$ docker volume create dbdata
$ docker run -d --name postgres \
-e POSTGRES_PASSWORD=mysecretpassword \
-e PGDATA=/var/lib/postgresql/data/pgdata \
-v dbdata:/var/lib/postgresql/data \
postgres:latest
```
> The postgres database is a default database meant for use by users, utilities and third party applications.
> [postgresql.org/docs](http://www.postgresql.org/docs/9.3/interactive/app-initdb.html)
## Start LedgerSMB
```plain
$ docker run -d -p 5762:5762 --name myledger \
ledgersmb/ledgersmb:latest
```
This command maps port 5762 of your container to port 5762 in your host. The
web application inside the container should now be accessible through
http://localhost:5762/setup.pl.
docker run --name myledger --link some-postgres:postgres -d ledgersmb/ledgersmb
## Set up LedgerSMB
* Visit http://myledger:5762/setup.pl.
* Log in with the "postgres" user and the password `mysecretpassword`
and provide the name of a company (= database name) you want to create.
* Go over the steps presented in the browser
Visit http://myledger:5000/setup.pl (you can forward port 5000 to the host machine, or lookup the IP address for the "myledger" container if running on localhost)
Once you have completed the setup steps, you have a fully functional
LedgerSMB instance running!
Log in with the "postgres" user and the password you set when starting up the Postgres container, and provide the name of a company database you want to create.
Visit http://localhost:5762/login.pl to log in and get started.
Once you have completed the setup, you have a fully functional LedgerSMB instance running!
Visit http://localhost:5000/login.pl to log in and get started.
# Updating the LedgerSMB container
No persistant data is stored in the LedgerSMB container.
All LedgerSMB data is stored in Postgres, so you can stop/destroy/run a
new LedgerSMB container as often as you want.
No persistant data is stored in the LedgerSMB container. All LedgerSMB data is stored in Postgres, so you can stop/destroy/run a new LedgerSMB container, and as long as you link it to the Postgres database, you should be able to pick up where you left off.
# Environment Variables
The LedgerSMB image uses several environment variables. They are all optional.
The LedgerSMB image uses several environment variables which are easy to miss. While none of the variables are required, they may significantly aid you in using the image.
### `POSTGRES_HOST` = 'postgres'
## `POSTGRES_HOST`
This environment variable is used to specify the hostname of the Postgres server. The default is "postgres", which will find the container linked in.
Default: postgres
If you set this to another hostname, LedgerSMB will attempt to connect to that hostname instead.
Specifies the hostname of the PostgreSQL server to connect to. If you use
a PostgreSQL image, set it to the name of that image.
## `POSTGRES_PORT` = 5432
## `POSTGRES_PORT`
Port to connect to Postgres on. Use to connect to a Postgres server running on an alternate port.
Default: 5432
## `DEFAULT_DB` = lsmb
Port on which the PostgreSQL server is running.
Set this if you want to automatically log in to a particular LSMB database.
## `DEFAULT_DB`
### `SSMTP_ROOT` `SSMTP_MAILHUB` `SSMTP_HOSTNAME` `SSMTP_USE_STARTTLS` `SSMTP_AUTH_USER` `SSMTP_AUTH_PASS` `SSMTP_METHOD` `SSMTP_FROMLINE_OVERRIDE`
Default: lsmb
These variables are used to set outgoing SMTP defaults. To set the outgoing email address, set SSMTP_ROOT, and SSMTP_HOSTNAME at a minimum -- SSMTP_MAILHUB defaults to the default docker0 interface, so if your host is already configured to relay mail, this should relay successfully with only those two set.
Set this if you want to automatically log in to a particular LedgerSMB database
without needing to enter the name of that database on the login.pl login screen.
Use the other environment variables to relay mail through another host.
## `LSMB_WORKERS`
### `CREATE_DATABASE` `POSTGRES_PASS`
Default: 5
If `CREATE_DATABASE` is set, the tools/dbsetup.pl is called with the database name, and the postgres host and password. Currently this is failing with 'Can't locate object method "process_roles" via package "LedgerSMB::Database" at tools/dbsetup.pl line 203.'
Set this if you want to run in a memory-constrained environment. E.g. set it to
2 when running in a 1 GB memory setup. Please do note that this may adversely
affect the performance experience of users.
## Mail configuration
The docker image uses `ssmtp` to send mail.
* `SSMTP_ROOT` (config: `Root`)
* `SSMTP_MAILHUB` (config: `Mailhub`)
* `SSMTP_HOSTNAME` (config: `Hostname`)
* `SSMTP_USE_STARTTLS` (config: `UseSTARTTLS`)
* `SSMTP_AUTH_USER` (config: `AuthUser`)
* `SSMTP_AUTH_PASS` (config: `AuthPass`)
* `SSMTP_AUTH_METHOD` (config: `AuthMethod`)
* `SSMTP_FROMLINE_OVERRIDE` (config: `FromLineOverride`)
These variables are used to set outgoing SMTP defaults.
To set the outgoing email address, set `SSMTP_ROOT` and `SSMTP_HOSTNAME` at
a minimum.
`SSMTP_MAILHUB` defaults to the default docker0 interface, so if your host is
already configured to relay mail, this should relay successfully with only
the root and hostname set.
Use the other environment variables to relay mail through a different host.
Use the [ssmtp.conf man
page](https://www.systutorials.com/docs/linux/man/5-ssmtp.conf/) to look up
the meaning and function of each of the mail configuration keys.
Once this is working, this will provision a new database in the existing server. After the first run, we recommend stopping/removing the LedgerSMB container and starting a new one without these variables -- the previous database should remain present.
# Troubleshooting/Developing
Currently the LedgerSMB installation is in /srv/ledgersmb
and the startup & config script is /usr/bin/start.sh.
You can connect to a running container using:
> docker exec -ti myledger /bin/bash
... this will give you a shell inside the container where you can inspect/troubleshoot the installation.
Currently the LedgerSMB installation is in /srv/ledgersmb, and the startup/config script is /usr/bin/start.sh.
# Supported Docker versions
This image is officially supported on Docker version 1.7.0.
Support for older versions is provided on a best-effort basis.
# User Feedback
## Documentation
This is a brand new effort, and we will be adding documentation to the http://ledgersmb.org site when we get a chance.
## Issues
If you have any problems with or questions about this image or LedgerSMB, please contact us on the [mailing list](http://ledgersmb.org/topic/support/mailing-lists-rss-and-nntp-feeds) or through a [GitHub issue](https://github.com/ledgersmb/ledgersmb-docker/issues).
You can also reach some of the official LedgerSMB maintainers via the `#ledgersmb` IRC channel on [Freenode](https://freenode.net), or on the bridged [Matrix](https://matrix.org) room in [#ledgersmb:matrix.org](https://matrix.to/#/#ledgersmb:matrix.org). The [Riot.im](https://riot.im/app/#/room/#ledgersmb:matrix.org) Matrix client is highly recommended.
You can also reach some of the official LedgerSMB maintainers via the `#ledgersmb` IRC channel on [Freenode](https://freenode.net).
1.4/latest: CREATE_DATABASE env variable currently does not provision a test company.
1.5/dev-master: Currently no way to get a working database. Bugs are filed, blocking 3 different approaches: New database, Upgrade from 1.4, Test company
## Contributing

View File

@@ -1,72 +0,0 @@
# This docker-compose file creates one
# compose 'project' consisting of two containers
#
# 1. The PostgreSQL data container
# 2. The LedgerSMB application container
#
# LedgerSMB persists all its data in the database,
# so no special care needs to be taken on
# container upgrades. With PostgreSQL, data is
# persisted across upgrades by the use of a
# special 'dbdata' volume
version: "3.2"
services:
# Note that the container needs to be named "postgres" here,
# because that allows us to use the default hostname ("postgres")
# from the LedgerSMB configuration
postgres:
image: postgres:9.6-alpine
environment:
# Replace the password below for a secure setup
POSTGRES_PASSWORD: abc
PGDATA: /var/lib/postgresql/data/pgdata
networks:
- internal
volumes:
- "pgdata:/var/lib/postgresql/data"
lsmb:
depends_on:
- postgres
image: ledgersmb/ledgersmb:1.5
networks:
- internal
- default
# Uncomment the 'ports' section to map the LedgerSMB container port (5762)
# to the host's port of the same number, thus making LedgerSMB
# available on http://<host-dns-or-ip>:5762/
# SECURITY NOTE: Do this for evaluation purposes only!
# In production, be sure to use SSL/TLS to protect user's passwords
# and other sensitive data
# ports:
# - "5762:5762"
environment:
# The LSMB_WORKERS environment variable lets you select the number
# of processes serving HTTP requests. The default number of 2 workers
# is geared toward limited-memory situations (1 GB). In order to
# improve the performance experience, increase memory and the
# number of workers
#
LSMB_WORKERS: 2
#
#
# SSMTP_ROOT:
# SSMTP_HOSTNAME:
# SSMTP_MAILHUB:
# SSMTP_AUTH_USER:
# SSMTP_AUTH_PASS:
# SSMTP_AUTH_METHOD:
# SSMTP_USE_STARTTLS:
# SSMTP_FROMLINE_OVERRIDE:
# having the dbdata volume is required to persist our
# data between PostgreSQL container updates; without
# that, the data is contained in the same volume as
# the rest of the image and on update/upgrade, the
# data will be lost.
volumes:
pgdata:
networks:
internal:

View File

@@ -1,48 +1,25 @@
#!/bin/bash
update_ssmtp.sh
cd /srv/ledgersmb
if [[ ! -f ledgersmb.conf ]]; then
cat <<EOF >/tmp/ledgersmb.conf
[main]
cache_templates = 1
[database]
host = $POSTGRES_HOST
port = $POSTGRES_PORT
default_db = $DEFAULT_DB
[mail]
sendmail = /usr/sbin/ssmtp
EOF
export LSMB_CONFIG_FILE='/tmp/ledgersmb.conf'
cp ledgersmb.conf.default ledgersmb.conf
sed -i \
-e "s/\(cache_templates = \).*\$/cache_templates = 1/g" \
-e "s/\(host = \).*\$/\1$POSTGRES_HOST/g" \
-e "s/\(port = \).*\$/\1$POSTGRES_PORT/g" \
-e "s/\(default_db = \).*\$/\1$DEFAULT_DB/g" \
-e "s%\(sendmail = \).*%\1/usr/sbin/ssmtp%g" \
/srv/ledgersmb/ledgersmb.conf
fi
if [ ! -f "/tmp/ledgersmb" ]; then
mkdir /tmp/ledgersmb
if [ ! -z ${CREATE_DATABASE+x} ]; then
perl tools/prepare-company-database.pl --company $CREATE_DATABASE \
--host $POSTGRES_HOST \
--owner postgres \
--password "$POSTGRES_PASS"
fi
# Currently unmaintained/untested
# if [ ! -z ${CREATE_DATABASE+x} ]; then
# perl tools/dbsetup.pl --company $CREATE_DATABASE \
# --host $POSTGRES_HOST \
# --postgres_password "$POSTGRES_PASS"
#fi
# Needed for modules loaded by cpanm
export PERL5LIB
for PerlLib in /usr/lib/perl5* /usr/local/lib/perl5*/site_perl/* ; do
[[ -d "$PerlLib" ]] && {
PERL5LIB="$PerlLib";
echo -e "\tmaybe: $PerlLib";
}
done ;
echo "Selected PERL5LIB=$PERL5LIB";
# start ledgersmb
# --preload-app allows application initialization to kill the entire
# starman instance (instead of just the worker, which will immediately
# get restarted); it also has a positive effect on memory use
exec starman --port 5762 --workers ${LSMB_WORKERS:-5} --preload-app tools/starman.psgi
exec starman tools/starman.psgi

View File

@@ -1,6 +1,6 @@
#!/bin/bash
ConfiguredComment='# install script update_ssmtp.sh has configured ssmtp'
grep -qc "$ConfiguredComment" /etc/ssmtp/ssmtp.conf && {
grep -qc "$ConfiguredComment" /etc/ssmtp.conf && {
echo "smtp configured."
exit
}