ledgersmb / ledgersmb-docker Goto Github PK
View Code? Open in Web Editor NEWDockerfile for LedgerSMB Docker image
Dockerfile for LedgerSMB Docker image
The problem for me is that Docker is only available for AMD64 architecture,
not the armhf of the Raspberry Pi. The Raspberry Pi is a low cost option
for small business accounting - AU$170 for the Pi400 kit and AU$110 for a
21" screen - nothing else required ๐
Originally posted by @howardlowndes in ledgersmb/LedgerSMB#7797 (comment)
During my building of the container, I was bind-mounting the /srv/ledgersmb from the host filesystem because I needed some local modifications.
However, it turns out that if you run the container with no modifications, it cannot generate the ledgersmb.conf file due to file permissions. This file is necessary to set the postgres host to the environment variables defined in the script.
Need to change ownership of the source directory to allow the www-data user write access.
I need a guide to install ledgersmb in a subfolder: mydomain.com/ledgersmb
From Matrix
(Ylavoie) John For our docker image, could we default to 5432 but allow overriding. This would enable installing on another version.
www-data points to /var/www which is owned by root.
i follow the setup process and i got this after filling in a user
Error!
Can't call method "msg" on unblessed reference at /srv/ledgersmb/tools/../lib/LedgerSMB/Request.pm line 61.
dbversion: 1.5.20, company:
Status: 500 Internal server error (PSGI.pm run_new)
A small, but annoying problem I have with my LedgerSMB/Docker installation is that when I go to https://ledgersmb.example.net/ (i.e. the root of the LedgerSMB server), I get hit with the HTTP Basic Auth dialog, or sometimes an error message.
It would be great if the /
URL would instead redirect to /login.pl
.
Never used this before. Typically, I've found if I need to go into a compose file, that the authors could graciously suggest what the variables, that need to be edited, are located and what they refer to. It is no easy task for a newbie to wade in, unprepared and change stuff, without knowing what these changes refer to.
My first attempt with an unchanged compose file results in -
'WARN[0000] The "HOME_DEV" variable is not set. Defaulting to a blank string.
invalid mount config for type "bind": field Source must not be empty'
I've got no idea what any of that means. Nor have I found any online tutorials that could help me.
Could anyone at least tell me the variables and lines in the compose file that I need to change and what I also need to set these variables to? At least this would get me started, I hope.
Google ledgersmb docker and you are offered ledgersmb/ledgersmb-docker
Click Code and click Download ZIP
Download the .zip and extract it into a unique folder.
cd to that folder and list it
howard@raspi-office:/home/howard/Extracts/ledgersmb-docker-1.11 $ ls -l
total 40
-rw-r--r-- 1 howard howard 908 Dec 16 08:33 docker-compose-reverseproxy.yml
-rw-r--r-- 1 howard howard 3448 Dec 16 08:33 docker-compose.yml
-rw-r--r-- 1 howard howard 5093 Dec 16 08:33 Dockerfile
-rw-r--r-- 1 howard howard 1963 Dec 16 08:33 nginx.conf
-rw-r--r-- 1 howard howard 11440 Dec 16 08:33 README.md
-rwxr-xr-x 1 howard howard 4721 Dec 16 08:33 start.sh
howard@raspi-office:~/Extracts/ledgersmb-docker-1.11 $
Note that everything is dated Dec 16 so it's all current.
Read the README.md --- not very intuitve...
Note the presence of a start.sh script which is executable so run ./start.sh and get
./start.sh: line 3: cd: /srv/ledgersmb: No such file or directory
mkdir: cannot create directory โ./local/conf/โ: No such file or directory
./start.sh: line 72: ./local/conf/ledgersmb.yaml: No such file or directory
--------- LEDGERSMB CONFIGURATION: ledgersmb.conf
cat: ./local/conf/ledgersmb.yaml: No such file or directory
--------- LEDGERSMB CONFIGURATION --- END
Can't locate Plack/Runner.pm in @inc (you may need to install the Plack::Runner module) (@inc contains: /home/howard/perl5/lib/perl5/arm-linux-gnueabihf-thread-multi-64int /home/howard/perl5/lib/perl5 /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/arm-linux-gnueabihf/perl5/5.36 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl-base /usr/lib/arm-linux-gnueabihf/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl) at /usr/local/bin/starman line 3.
BEGIN failed--compilation aborted at /usr/local/bin/starman line 3.
Study line 3 of the script and see that it refers to /srv/ledgersmb
Run ls -l /srv and discover that it's am empty folder owned by root.root
Try running the script under sudo - same result.
Raise a bug report
After installing with docker-compose pull & docker-compose up, attempting to log on with default database username / password / company - postgres / abc / postgres fails with the following output to the console terminal:
postgres_1 | LOG: database system is ready to accept connections postgres_1 | LOG: autovacuum launcher started lsmb_1 | Req:2A5BA8809D4A11EA830E87B288A30552 ::ffff:192.168.192.1 - - [23/May/2020:23:07:25 +0000] "GET /login.pl HTTP/1.1" 200 4050 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0" lsmb_1 | Req:304E40FE9D4A11EA830E87B288A30552 ::ffff:192.168.192.1 - - [23/May/2020:23:07:35 +0000] "GET /login.pl?action=authenticate&company=postgres HTTP/1.1" 401 29 "http://127.0.0.1:5762/login.pl" "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0" postgres_1 | ERROR: function session_create() does not exist at character 15 postgres_1 | HINT: No function matches the given name and argument types. You might need to add explicit type casts. postgres_1 | STATEMENT: SELECT * FROM session_create(); lsmb_1 | Req:304F34149D4A11EA830E87B288A30552 2020/05/23 23:07:35 - ERROR - LedgerSMB::PSGI::catch {...} lib/LedgerSMB/PSGI.pm (136) -- ERROR: function session_create() does not exist\nLINE 1: SELECT * FROM session_create();\n ^\nHINT: No function matches the given name and argument types. You might need to add explicit type casts. at lib/LedgerSMB/Middleware/AuthenticateSession.pm line 228.\n lsmb_1 | Req:304F34149D4A11EA830E87B288A30552 ::ffff:192.168.192.1 - - [23/May/2020:23:07:35 +0000] "GET /login.pl?action=authenticate&company=postgres HTTP/1.1" 500 408 "http://127.0.0.1:5762/login.pl" "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0"
For resolution of this bug I'll pay $100 USD - notify me that bug is closed, let me test, and provide a paypal email and whoever closes it first gets the bounty. Cheers and thank you!
Happened to notice something while reading the README.md file, in the Issues section: the Matrix client being referred to there and the assciated URL is outdated and it should be the riot matrix client that's being referred to there, instead of the no longer used vertor.im matrix client. Issue is present in all of the branches where the matrix client is referenced in the README.md file.
issue
The docker yaml file for 1.9 branch pulls in Postgres 9.6, but the readme for ledgersmb branch 1.9 indicates that the minimum Postgres version is 10+.
The current start.sh script generates a /tmp/ledgersmb.conf on first run or any startup when this file doesn't already exist, with contents embedded in start.sh. It then sets the LSMB_CONFIG_FILE path to use it.
This makes it so you cannot easily set any options easily in a child Dockerfile -- when the image is built, the /tmp/ledgersmb.conf file does not exist, and the /tmp directory is subject to getting clobbered anyway.
Need to change start.sh to copy its necessary config from a file that could be replaced later in another Dockerfile.
Following the instructions in readme.md at https://github.com/ledgersmb/ledgersmb-docker/tree/1.9
In the section "Docker-Compose installation and start" the last line is
From here, follow the steps as detailed in the instructions for preparing for first use.
With "preparing for first use" as a link to:
https://ledgersmb.org/content/preparing-ledgersmb-19-first-use
The instructions at this link then proceed to indicate the users should login to setup.pl with the following:
Super-user login: lsmb_dbadmin
Password: <the password used in the installation>
Database: testcompany
The problem is that using the docker compose setup there is no "password used in the installation". When I tried to use the only password I was aware of from the compose installation abc
it failed.
I believe the line
From here, follow the steps as detailed in the instructions for preparing for first use.
should be removed or the instructions at the link for using lsmb_dbadmin should be corrected.
Later in the readme.md doc the section "Set up LedgerSMB" seems to be the correct.
1.10
This problem isn't browser related
When starting the docker container, an error presents as follows:
The docker container should fire up with out error and allow me to navigate to http://localhost:5762/setup.pl
This is the error I receive:
docker-compose up
ERROR: yaml.scanner.ScannerError: mapping values are not allowed here
in "./docker-compose.yml", line 118, column 73
This is line 118:
When generating a PDF in 1.6 that specifies the 'cmss' font - Computer Modern Sans Serif - the resulting PDF uses a Serif font. This is using the Docker ledgersmb/ledgersmb:1.6 container.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.