I’m trying to install Gramps Web on an existing Debian 12 server I run from my home. It’s currently serving Nextcloud for family use (Calendar sharing, etc.). I’m having trouble installing Gramps Web (w/ Let’s Encrypt) and I was hoping someone could help?
First, I was able to get the non-SSL version running locally without a problem (by accessing 10.0.0.10:444 (or whatever port I chose in the docker-compose.yml). Obviously, I don’t want to use this version for Internet access…
So, I downloaded the docker-compose.yml, but since I already use ports 80 and 443, I changed the ports to something like 81:81 and 444:444 but that doesn’t seem to even let me log in locally? I tried variations like 81:5000, etc. The logs for nginx shows:
nginx: [emerg] invalid server name or wildcard “…” on 0.0.0.0:80
which I assume means it’s still conflicting with the port that’s already in use by my server? All I get when trying to connect is “Unable to connect”. Or is this something else?
In any case, I’m not sure what I should at this point. But, once I get this working locally, what would I need to set up to forward on my router? Would forwarding 444 to 10.0.0.10:444 be enough?
Thanks so much for your help! It’s such a great program, I can’t wait to share it with my family members…
Hi!
I’m glad you like Gramps Web.
Running Gramps Web alongside Nextcloud on a single server is definitely possible, I am doing that, too.
The setup I recommend (which is the one I use) is to use Docker Compose with Nginx Proxy:
https://www.grampsweb.org/LetsEncrypt/
You can assign a different VIRTUAL_HOST
to each service. For instance, in my case I have nextcloud.mydomain.com
and grampsweb.mydomain.com
. You can check GitHub - nginx-proxy/nginx-proxy: Automated nginx proxy for Docker containers using docker-gen for documentation.
1 Like
I’ve been trying to use that version of docker-compose.yml to get things working, but nothing seems to solve my problem. The only changes I made were:
VIRTUAL_HOST: "gramps.myactualdomain.com" # e.g. gramps.mydomain.com
LETSENCRYPT_HOST: "gramps.myactualdomain.com" # e.g. gramps.mydomain.com
LETSENCRYPT_EMAIL: "myemailadress@gmail.com" # your email
and
ports:
- 81:81
- 444:444
Since Apache is currently listening under ports 80/443 for Nextcloud and a personal website, I was hoping to use Gramps Web under the above ports 81/444 (or whatever). Obviously I’m new to docker, but when I do a “docker exec nginx-proxy cat /etc/nginx/conf.d/default.conf”
I see that all of the configuration for nginx still seems to be for ports 80/443? When I do a “docker exec nginx-proxy curl localhost” I get a 503 error.
Just to note I have Jellyfin, qBittorrent-nox and a few other services running on other ports just fine.
“lsof -i -P” does show that ports 81 and 444 are being listened for, though I can’t connect to them from inside or outside the server itself.
Considering I don’t use Docker for anything else, what are the chances of getting Gramps Web working separately (i.e., if I pull out the files from the Docker image)?