Skip to content

Conversation

@0405ysj
Copy link
Collaborator

@0405ysj 0405ysj commented Dec 5, 2025

Context: b/466411126

Finally all preconditions are validated to launch Cuttlefish instances on podman instance, including GPU acceleration. So there's no blockers anymore to use podman. For the better maintenance, we wish to maintain only one container image in the end. However it still has some existing use cases prior to replace docker into podman, such as Cloud Orchestrator. Thus, I suggest to make both docker and podman available by single container image.

The purpose of this PR is to define a way to build podman image as we build docker image. After once we can build podman image via same steps, it would be able to switch current deployment pipeline based on docker build into podman build.

However, the podman image defined here won't start separated init process for container. This means this image won't work with systemd-journal-gatewayd. I can make podman image possible to support it, but we need to keep maintenance for 2 container images as docker can't follow the same approach. With this PR, I believe #1832 is getting to be required again, though not a blocker of this PR.

As this image no longer contains cvd binary under /root/cvd_home/bin,
this change removes related code on container/guest/run_services.sh
As mesa-utils or cuttlefish-base depends on libvulkan1, it doesn't need
to install explicitly.
As one container instance based on this image is for creating one
Cuttlefish instance group, it doesn't need to create a lot of TAP
interfaces.
@0405ysj 0405ysj added the kokoro:force-run Trigger a presubmit build unconditionally. label Dec 5, 2025
@GoogleCuttlefishTesterBot GoogleCuttlefishTesterBot removed the kokoro:force-run Trigger a presubmit build unconditionally. label Dec 5, 2025
@ikicha
Copy link
Collaborator

ikicha commented Dec 5, 2025

it would be able to switch current deployment pipeline based on docker build into podman build.

Why do we want that? Does podmam build has any advantages over docker build? The container image (either from docker build and podmam build) is compatible with both runtime.

Copy link
Collaborator

@ikicha ikicha left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We may want to separate a PR for clean-up. But i think either is okay

@0405ysj
Copy link
Collaborator Author

0405ysj commented Dec 5, 2025

it would be able to switch current deployment pipeline based on docker build into podman build.

Why do we want that? Does podmam build has any advantages over docker build? The container image (either from docker build and podmam build) is compatible with both runtime.

We may want to switch perhaps, because of integration with E2E testing. As docker image list and podman image list doesn't share their list, it requires to save image from one and load image from the other to use that image. And I believe podman is the primary target to be tested. Although we don't switch the pipeline, this PR is still meaningful since users can follow well-defined way to build podman image.

But I don't think it's a must thing, as both buildkit for docker and buildah for podman satisfies OCI. It wasn't a strong motivation to drive this PR.

@0405ysj 0405ysj marked this pull request as ready for review December 5, 2025 21:31
@0405ysj 0405ysj added this pull request to the merge queue Dec 8, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Dec 8, 2025
@0405ysj 0405ysj added this pull request to the merge queue Dec 8, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Dec 8, 2025
@0405ysj 0405ysj added this pull request to the merge queue Dec 8, 2025
Merged via the queue into google:main with commit 280c112 Dec 8, 2025
22 checks passed
@0405ysj 0405ysj deleted the podman branch December 8, 2025 21:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants