Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fetch directly a ready-to-use image for podman machine on Windows #14698

Closed
benoitf opened this issue Jun 22, 2022 · 11 comments · Fixed by #14919
Closed

fetch directly a ready-to-use image for podman machine on Windows #14698

benoitf opened this issue Jun 22, 2022 · 11 comments · Fixed by #14919
Labels
kind/feature Categorizes issue or PR as related to a new feature. locked - please file new issue/PR Assist humans wanting to comment on an old issue or PR with locked comments. machine windows issue/bug on Windows

Comments

@benoitf
Copy link
Contributor

benoitf commented Jun 22, 2022

Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)

/kind feature

On macOS, when perfoming podman machine init it fetches a pre-built fedora-coreos-36*-qemu.x86_64.qcow2.xz file and then it unpacks it and start machine from there.

But on Windows, it's fetching a fedora-35-x86_64.tar.xz file and then we're entering in updates/installation of RPM packages.

I would expect to have a ready-to-use image, and not going to the process of updating/installing standalone RPM files.
In case of offline mode, I can't do podman machine init step even if I've locally the fedora-35-x86_64.tar.xz file.

Also it's taking a very long time to perform all these small update/install process.
And creating another machine, we go to all these steps again and again.

Steps to reproduce the issue:

  1. podman machine init on Windows

  2. creates another machine, podman machine init foo
    it'll try to install packages, etc again.

Describe the results you received:
Installing packages, updating fedora, etc.

Describe the results you expected:
Just boot the prebuilt VM, ready-to-use, no need to have post-start actions

Additional information you deem important (e.g. issue happens only occasionally):

Output of podman version:

4.1.1

Output of podman info --debug:

(paste your output here)

Package info (e.g. output of rpm -q podman or apt list podman):

(paste your output here)

Have you tested with the latest version of Podman and have you checked the Podman Troubleshooting Guide? (https://github.com/containers/podman/blob/main/troubleshooting.md)

Yes/No

Additional environment details (AWS, VirtualBox, physical, etc.):

@openshift-ci openshift-ci bot added the kind/feature Categorizes issue or PR as related to a new feature. label Jun 22, 2022
@baude
Copy link
Member

baude commented Jun 22, 2022

@n1hility what say you?

@Luap99 Luap99 added windows issue/bug on Windows machine labels Jun 22, 2022
@Sebbiedu
Copy link

would be much appreciated #14589

@n1hility
Copy link
Member

n1hility commented Jun 23, 2022

That’s definitely where we want to go. Previously this wasn’t an option since we needed to pull from copr to upgrade F35 to podman 4, but now that it’s in f36 it’s doable but it requires that the fedora folks are on board with providing an additional rootfs stream (which receives updates similar to the base we are using today) that has Podman included.

@n1hility
Copy link
Member

(I plan to reach out and chat with them about it. I’ll also update the base to f36 soon)

@n1hility
Copy link
Member

@Sebbiedu proxy support is high priority for me (expect this sooner than rolling out and consuming the new Fedora stream)

@gbraad
Copy link
Member

gbraad commented Jun 29, 2022

@n1hility Will work with you on this. We have to collect the list of packages that need to be prepped for sure, hosting location (perhaps pull from a registry; we do this for CRC soon as it allows to re-target an alternative location).

@gbraad
Copy link
Member

gbraad commented Jul 1, 2022

Have a prepped image that reduces the whole install time to below 1min when the image has been cached, and otherwise can be around 1 - 2 mins depending on the download speed.

image (10)

Still wanna perform some cleanup as at the moment the init still wants to check the image size to determine if complete or cached. This would prevent and airgapped scenario. Alternatively this can be specified with --image-path .\podman-wsl-f35.tar.gz.

Note: the phrase (this may take 5+ minutes on a new WSL install) will be modified for the PR as this is not the case anymore 🤭

Note2: update to f36 is also possible. Checked and works.

gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
This commit introduces a prepared image for setting up the WSL2
environment. This means that the deployment will take considerable
less time to finish (as it does not need to run an update and package
install), but also allows to rely on a cached image to re-init the
environment without the need for an internet connection.

[NO NEW TESTS NEEDED]

Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
This commit introduces a prepared image for setting up the WSL2
environment. This means that the deployment will take considerable
less time to finish (as it does not need to run an update and package
install), but also allows to rely on a cached image to re-init the
environment without the need for an internet connection.

[NO NEW TESTS NEEDED]

Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
This commit introduces a prepared image for setting up the WSL2
environment. This means that the deployment will take considerable
less time to finish (as it does not need to run an update and package
install), but also allows to rely on a cached image to re-init the
environment without the need for an internet connection.

[NO NEW TESTS NEEDED]

Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
This commit introduces a prepared image for setting up the WSL2
environment. This means that the deployment will take considerable
less time to finish (as it does not need to run an update and package
install), but also allows to rely on a cached image to re-init the
environment without the need for an internet connection.

[NO NEW TESTS NEEDED]

Signed-off-by: Gerard Braad <me@gbraad.nl>
gbraad added a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
This commit introduces a prepared image for setting up the WSL2
environment. This means that the deployment will take considerable
less time to finish (as it does not need to run an update and package
install), but also allows to rely on a cached image to re-init the
environment without the need for an internet connection.

[NO NEW TESTS NEEDED]

Signed-off-by: Gerard Braad <me@gbraad.nl>
n1hility pushed a commit to gbraad-redhat/podman that referenced this issue Jul 13, 2022
This commit introduces a prepared image for setting up the WSL2
environment. This means that the deployment will take considerable
less time to finish (as it does not need to run an update and package
install), but also allows to rely on a cached image to re-init the
environment without the need for an internet connection.

[NO NEW TESTS NEEDED]

Signed-off-by: Gerard Braad <me@gbraad.nl>
@gbraad
Copy link
Member

gbraad commented Jul 14, 2022

A follow-up issue is to provide better feedback on what is downloaded:

image

At the moment rootfs.tar.xz is the only information that is shown. It would be nice if the actual redirected version, eg v0.0.2 is shown instead of the latest.


Created as: #15002

@gbraad
Copy link
Member

gbraad commented Jul 14, 2022

@n1hility I remember you mentioning updating the man pages as the imagestream is not used (but instead an imagepath).

mheon pushed a commit to mheon/libpod that referenced this issue Jul 26, 2022
This commit introduces a prepared image for setting up the WSL2
environment. This means that the deployment will take considerable
less time to finish (as it does not need to run an update and package
install), but also allows to rely on a cached image to re-init the
environment without the need for an internet connection.

[NO NEW TESTS NEEDED]

Signed-off-by: Gerard Braad <me@gbraad.nl>
@brainbytes42
Copy link

(I'm not sure if this is exactly the same issue - but maybe someone can tell?)

We're trying to run podman (v. 4.2.1) on a development-machine running Windows without internet connection. (We push files only manually.)
Even when using a local --image-path, it wouldn't work, as it tries to download several packages.

Any help how to use completely offline on Windows would be much appreciated. Thanks!

@mheon
Copy link
Member

mheon commented Sep 29, 2022

That sounds like it would be worth a fresh discussion, please open one

@github-actions github-actions bot added the locked - please file new issue/PR Assist humans wanting to comment on an old issue or PR with locked comments. label Sep 14, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 14, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
kind/feature Categorizes issue or PR as related to a new feature. locked - please file new issue/PR Assist humans wanting to comment on an old issue or PR with locked comments. machine windows issue/bug on Windows
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants