Skip to content
Emanuele Gissi edited this page Jan 8, 2024 · 10 revisions

Welcome to the grist-omnibus-vvf wiki!

How to run the container with Podman

mkdir -p /home/grist/persist
podman run \
  -p 80:80 -p 443:443 \ host:container port mapping
  -e URL=https://apps.ge.dippvf.it \ URL at which Grist will be accessed
  -e HTTPS=auto \ mandatory if URL is https protocol. Can be auto (Let's Encrypt), or manual
  -e TEAM=vvf-ge \ a short lowercase identifier
  -e [email protected] \
  -e PASSWORD=topsecret \
  -e [email protected] \
  -e PASSWORD2=topsecret \
  -e [email protected] \
  -e PASSWORD3=topsecret \
  -e [email protected] \
  -e PASSWORD4=topsecret \
  -e [email protected] \
  -e PASSWORD5=topsecret \
  -e [email protected] \
  -e PASSWORD6=topsecret \
  -v /home/grist/persist:/persist:Z \ bind local dir to container dir, :Z relabels for SELinux
  --name grist \
  --rm \ remove automatically created volumes
  -i \ interactive
  -t \ allocates a pseudo-tty and attach to the standard input
  ghcr.io/ict-vvf-genova/grist-omnibus-vvf  \ image

If providing your own certificate (HTTPS=manual), provide a private key and certificate file as /custom/grist.key and custom/grist.crt respectively:

podman run \
  ...
  -e HTTPS=manual \
  -v $(PWD)/key.pem:/custom/grist.key \
  -v $(PWD)/cert.pem:/custom/grist.crt \
  ...

You can change dex.yaml (for example, to fill in keys for Google and Microsoft sign-ins, or to remove them) and then either rebuild the image or (easier) make the custom settings available to the omnibus as /custom/dex.yaml:

podman run \
  ...
  -v $PWD/dex.yaml:/custom/dex.yaml \
  ...

Proxy?

https://github.com/traefik/traefik/issues/1110

systemd service for the container

Source: https://www.tutorialworks.com/podman-systemd/

We want to create a systemd service for the container.

podman generate systemd \
    --new --name grist \
    > /etc/systemd/system/grist.service

Check: $ ls -al /etc/systemd/system/grist.service

The final step is to enable the service, and start it:

$ systemctl enable grist
$ systemctl start grist

When the server gets rebooted, systemd will restart the container. Let’s check it with:

$ podman ps

How to run cron jobs inside a docker container?

Or?

Clone this wiki locally