projectcontour / projectcontour/contour
support Podman for local development
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 3.9k
- Forks
- 728
- Avg merge
- 17h 41m
- Merged PRs (30d)
- 36
Description
Some contributors may want to use [Podman](https://docs.podman.io/en/latest/index.html) locally to run containers. The scripts and documentation should be updated to support this use case **in addition to the current use case of using Docker**. From my initial testing, here are some things that need to be addressed:
- use `podman` command instead of `docker` in scripts (e.g. https://github.com/projectcontour/contour/blob/main/test/scripts/make-kind-cluster.sh, `make container` command)
- set `KIND_EXPERIMENTAL_PROVIDER=podman`
- the format of the `podman network inspect` output is different than that of `docker network inspect`, which breaks https://github.com/projectcontour/contour/blob/main/test/scripts/make-kind-cluster.sh#L78-L89 -- update for the podman format
- `kind load docker-image` does not work when using Podman -- need to replace with `podman save image | kind load image-archive -` (ref. https://github.com/projectcontour/contour/blob/main/test/scripts/install-contour-working.sh#L37, https://github.com/kubernetes-sigs/kind/issues/2729#issuecomment-1110152680)
Ultimately, running commands like `make install-contour-release` and `make install-contour-working` should work properly with Podman.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with test/scripts/make-kind-cluster.sh, especially the network inspection logic, and test/scripts/install-contour-working.sh, then inspect the make container and install-contour-release/install-contour-working commands. Run the existing local-development workflows with Podman and compare their behavior with Docker. Done means both install commands work with Podman while the current Docker use case remains supported.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, kubernetes, shell
- Domain
- cli, devops, infrastructure
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100