Spent 2 days and cannot self host using docker.
Is there anyone who can help me host LedgerSMB into docker in my small vps? I have spent 2 days and took all the help from chatgpt but I reached a point where I am immediately logged out after logging in and I am tired at this point. Will try again tomorrow but if anyone is interested in helping a sad fella let me know.
It is hard to help when you have provided no information about how you are trying to use docker, what base OS you are using, which docker images your are using, which version of LSMB you are using, etc. and what problems you experienced via errors in the logs, etc.
I would not trust chatGPT for instructions.
Tested instructions for spinning up a docker image are at https://github.com/ledgersmb/ledgersmb-docker
The LedgerSMB installer instructions are available at https://get.ledgersmb.org
Live help is usually available in the evening UTC on Matrix. See https://app.element.io/#/room/#ledgersmb:matrix.org
The project makes extensive use of docker images for testing and development and they are pretty solid at this point in time.
I checked the ChatGPT instructions and they simplified our install in inappropriate ways. We are working on ways to improve that.
Here's my docker-compose.yml if it helps:
services:
postgres:
image: postgres:15-alpine
environment:
# Replace the password below for a secure setup
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-abc}
PGDATA: /var/lib/postgresql/data/pgdata
networks:
- internal
volumes:
- "pgdata:/var/lib/postgresql/data"
restart: unless-stopped
lsmb:
depends_on:
- postgres
image: ghcr.io/ledgersmb/ledgersmb:1.12
volumes:
# Override all configuration:
- type: bind
source: /MYPATH/ledgersmb
target: /srv/ledgersmb/local/conf
networks:
- internal
- proxy
labels:
- traefik.enable=true
- traefik.http.routers.cvmc-books-local.rule=Host(`*****.local`)
- traefik.http.routers.cvmc-books-local.entrypoints=web
# make sure traefik uses _its_ network, not the internal one we use for the DB
- traefik.docker.network=proxy
environment:
LSMB_WORKERS: ${LSMB_WORKERS:-5}
restart: unless-stopped
# 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:
proxy:
name: proxy
external: true
I have Traefik on the 'proxy' network redirecting my .local domain requests to the docker container.
You could bind the pgdata volume to the host filesystem.
My configuration also sets HTTPS for external access, but I've removed that config as I haven't even attempted to get that working yet (most of my external sites go through Authelia, but I'm not sure that's possible for LedgerSMB). I also haven't yet set up SMTP.
Closing: more than 90 days without user response. Feel free to reopen with your comments.