Currently production is deployed directly on a Debian trixie VM ("abt-VM"). In the future we plan to add paperless-ngx.
The VM already runs tailscale and the webapp is reachable only over tailscale using the VMs tailscale name.
Investigate if paperless-ngx can be deployed using podman-compose. If so prepare a new deployment setup for abt, so that:
- abt itself runs in a debian trixie container. The container image shall be built by github CI and the deployment update script should pull this container instead of rebuilding it everytime.
- postgresql shall continue to run on the "abt-VM". It will be necessary to expose the postgres port to the abt container.
- abt will have one container running the webapp, using apache2 and passenger.
- a second container will run to run ActiveJob jobs and scheduled tasks
- in the future paperless-ngx will be added as containers. It should then be able to use the same postgresql installation on the host (with new credentials).
- abt shall be able to talk to paperless-ngx so it can process incoming documents.
- paperless-ngx shall be able to use the mailgun secrets to process incoming emails.
In the PR also suggest how to reconfigure apache2 on the host, so that abt and new apps like paperless-ngx can be reachable over the same https:// URL via tailscale. If necessary prepare abt to support running in a "subdirectory URL".
Do NOT add paperless-ngx in this first step.
Make sure this setup can also be tested locally, in this case the webapp should probably be mounted into the container and postgresql 17 shall run in a container too.
Currently production is deployed directly on a Debian trixie VM ("abt-VM"). In the future we plan to add paperless-ngx.
The VM already runs tailscale and the webapp is reachable only over tailscale using the VMs tailscale name.
Investigate if paperless-ngx can be deployed using podman-compose. If so prepare a new deployment setup for abt, so that:
In the PR also suggest how to reconfigure apache2 on the host, so that abt and new apps like paperless-ngx can be reachable over the same https:// URL via tailscale. If necessary prepare abt to support running in a "subdirectory URL".
Do NOT add paperless-ngx in this first step.
Make sure this setup can also be tested locally, in this case the webapp should probably be mounted into the container and postgresql 17 shall run in a container too.