aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Duncan <pabs@pablotron.org>2023-05-06 04:20:55 -0400
committerPaul Duncan <pabs@pablotron.org>2023-05-06 04:20:55 -0400
commit11f3e7cb55166be986ea979d83edce67bac3aba8 (patch)
tree47971aa583515513a853677b0905bd58c8530bb8
parent319748661031462508cc7f144dd29f0132b3ef00 (diff)
downloadpablotron.org-11f3e7cb55166be986ea979d83edce67bac3aba8.tar.bz2
pablotron.org-11f3e7cb55166be986ea979d83edce67bac3aba8.zip
content/posts/2023-05-02-bookworm-and-podman.md: add notes about podman-compose and bookman
-rw-r--r--content/posts/2023-05-02-bookworm-and-podman.md24
1 files changed, 21 insertions, 3 deletions
diff --git a/content/posts/2023-05-02-bookworm-and-podman.md b/content/posts/2023-05-02-bookworm-and-podman.md
index 459a698..0fbe4d3 100644
--- a/content/posts/2023-05-02-bookworm-and-podman.md
+++ b/content/posts/2023-05-02-bookworm-and-podman.md
@@ -15,19 +15,28 @@ incompatibilities and minor annoyances.
[Podman 4.3][podman-4.3] ships with [Bookworm][] and seems to fix all
the issues I had before. [Rootless containers][], [multi-stage
builds][multi-stage], and all of my muscle-memory `docker` commands now
-work as expected.
+work as expected. There is even a decent clone of [docker-compose][]
+named (surprise!) [podman-compose][].
The only real differences I noticed are:
1. The command is `podman` instead of `docker`.
-2. Image names are registry-prefixed. Example: `FROM docker.io/bash` instead of `FROM bash`.
-3. Searches are registry-prefixed. Example: `podman search docker.io/pablotron`.
+2. Image names must be registry-prefixed. Example: `FROM docker.io/bash` instead of `FROM bash`.
+3. Searches must be registry-prefixed. Example: `podman search docker.io/pablotron`.
A couple of quick tests:
* [Sinatra web application (rootless)][sinatra-test]
* [Go web application (rootless, scratch, multi-stage build)][go-test]
+**Update (2023-05-05):** I put together a simple web application named
+[Bookman][] to put [podman-compose][] through it's paces. It uses
+multi-containers, [multi-stage builds][multi-stage], boot dependencies,
+secrets, and volumes.
+
+[Here's a log of the setup process][bookman-gist], and [here's a
+screenshot][bookman-shot] of the exposed web interface.
+
[bookworm]: https://www.debian.org/releases/bookworm/
"Debian bookworm."
[debian]: https://debian.org/
@@ -48,3 +57,12 @@ A couple of quick tests:
"Test Go web application running in a Podman container."
[license-shenanigans]: https://blog.alexellis.io/docker-is-deleting-open-source-images/
"Docker is deleting Open Source organizations (updated)."
+[podman-compose]: https://github.com/containers/podman-compose
+ "Podman-compatible clone of Docker Compose."
+[docker-compose]: https://docs.docker.com/compose/
+ "Tool for defining and running multi-container Docker applications."
+[bookman]: https://github.com/pablotron/bookman
+ "Bookman GitHub repository."
+[bookman-gist]: https://gist.github.com/pablotron/f19037d1718224611efd7aa6e05f82b6
+[bookman-shot]: /files/posts/bookworm-and-podman/bookman.png
+ "Bookman web interface deployed via podman-compose."