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

Initial support for OCI images #922

Merged
merged 19 commits into from
Jul 11, 2024
Merged

Initial support for OCI images #922

merged 19 commits into from
Jul 11, 2024

Conversation

stgraber
Copy link
Member

@stgraber stgraber commented Jun 7, 2024

No description provided.

@stgraber stgraber force-pushed the oci branch 2 times, most recently from 0ba523a to 2591cdb Compare June 8, 2024 03:48
Comment on lines +117 to +134
"skopeo",
"--insecure-policy",
"copy",

Choose a reason for hiding this comment

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

Is there any reason skopeo and umoci is called as sub-process instead of used as a library?

Copy link
Member Author

Choose a reason for hiding this comment

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

Mostly simplicity at this stage. Neither appear to be particularly designed to be consumed as Go modules and we also don't want to find ourselves importing too many indirect Go dependencies into the core of our project.

As both skopeo and umoci are readily packaged in most distributions, just using the external commands is best for now.

Copy link
Contributor

Choose a reason for hiding this comment

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

Would it be possible to get new commands/dependencies added to the release notes? Or maybe keep a running list in the packaging doc?

(This is amazing btw :)

cmd/incusd/main_forknet.go Outdated Show resolved Hide resolved
cmd/incusd/main_forknet.go Outdated Show resolved Hide resolved
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
This is needed to allow us to update an instance definition after its
root filesystem has been unpacked.

Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
@github-actions github-actions bot added the API Changes to the REST API label Jul 11, 2024
@stgraber stgraber marked this pull request as ready for review July 11, 2024 03:22
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Closes lxc#908

Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
Copy link
Member

@tych0 tych0 left a comment

Choose a reason for hiding this comment

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

one comment and one question, but lgtm otherwise.

@stgraber
Copy link
Member Author

Examples of normal usage:

stgraber@dakara:~$ incus launch docker:hello-world --ephemeral --console
Launching the instance
Instance name is: native-imp

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/


stgraber@dakara:~$ incus launch docker:caddy
Launching the instance
Instance name is: known-ewe                                    
stgraber@dakara:~$ incus list known-ewe
+-----------+---------+-----------------------+-------------------------------------------+-----------------+-----------+
|   NAME    |  STATE  |         IPV4          |                   IPV6                    |      TYPE       | SNAPSHOTS |
+-----------+---------+-----------------------+-------------------------------------------+-----------------+-----------+
| known-ewe | RUNNING | 172.17.250.189 (eth0) | 2602:fc62:c:250:216:3eff:fe95:8bcb (eth0) | CONTAINER (APP) | 0         |
+-----------+---------+-----------------------+-------------------------------------------+-----------------+-----------+
stgraber@dakara:~$ 

@tych0 tych0 enabled auto-merge July 11, 2024 15:40
@tych0 tych0 merged commit 866c093 into lxc:main Jul 11, 2024
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
API Changes to the REST API Documentation Documentation needs updating
Development

Successfully merging this pull request may close these issues.

6 participants