- Makefile: podman build + push instead of docker buildx. build-production
clones the git remote and builds from it; build-check / build-check-local
build without pushing. Single-architecture (PLATFORM-overridable) rather
than a multi-arch manifest.
- deploy.sh: connect as the unprivileged container user; no become.
- ansible: target emily, rootless Podman Quadlet behind the fleet's shared
Caddy unit (caddy/playbook.yml in ansible-playbooks).
- register role writes greatbear.network (NetworkName=greatbear_net) and
the caddy.container.d drop-in that puts Caddy on it.
- greatbear role: podman login/pull, ~/podman-data/greatbear + .env,
greatbear.container (UserNS=keep-id:uid=0,gid=0, EnvironmentFile,
Network, Volume, no published ports), systemctl --user start and a
podman healthcheck gate, with a diagnostics rescue block.
- caddy role appends the site blocks to the shared Caddyfile and reloads;
handlers reload vs. recreate Caddy (a new network drop-in re-creates it).
- drop the network role, the community.docker requirements and the
ansible/files/ templates.
- .containerignore replaces .dockerignore (Buildah reads it natively).
- README: Podman build, rootless Quadlet deploy. No data migration step —
there is no PocketBase state to carry over.
27 lines
403 B
Plaintext
27 lines
403 B
Plaintext
# Keep the build context small and secret-free.
|
|
# Read by Podman/Buildah (`.containerignore`) and, as a fallback, Docker.
|
|
|
|
# VCS / editor / local state
|
|
.git
|
|
.gitignore
|
|
.containerignore
|
|
.env
|
|
.npm-cache
|
|
.tmp-pb
|
|
.podman
|
|
.vscode
|
|
design
|
|
*.zip
|
|
|
|
# Node artifacts
|
|
**/node_modules
|
|
app/.output
|
|
app/.nitro
|
|
app/dist
|
|
|
|
# Ops assets not needed inside the image
|
|
ansible
|
|
Makefile
|
|
README.md
|
|
scripts/create-collections.sh
|