<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Donno</id>
	<title>Alpine Linux - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Donno"/>
	<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/wiki/Special:Contributions/Donno"/>
	<updated>2026-05-09T23:41:15Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://wiki.alpinelinux.org/w/index.php?title=Runc&amp;diff=30350</id>
		<title>Runc</title>
		<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/w/index.php?title=Runc&amp;diff=30350"/>
		<updated>2025-07-05T12:37:27Z</updated>

		<summary type="html">&lt;p&gt;Donno: Provide additional explanation and information&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:runc}}[https://github.com/opencontainers/runc runc] is a CLI tool for spawning and running containers on Linux according to the OCI specification, implemented in Go. This page provides instructions to setup containers using runc.&lt;br /&gt;
&lt;br /&gt;
The tool is meant as a low-level tool and is intended to deal with the plumbing of container. The expectaiton is is it is used by higher level container software (such as [[Docker]] and [[Podman]]) to provide an interface better suited at common tasks. However, it can be useful for learning how things work, small tests or building your own tooling.&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Enable [[OpenRC#cgroups|cgroups]]&lt;br /&gt;
&lt;br /&gt;
== Set up a minimal container ==&lt;br /&gt;
&lt;br /&gt;
Here are the steps to create a minimal container using runc and Alpine Linux.&lt;br /&gt;
This creates an OCI bundle &lt;br /&gt;
&lt;br /&gt;
{{Cmd|# apk add runc}}&lt;br /&gt;
{{Cmd|# mkdir /opt/busybox-container}}&lt;br /&gt;
{{Cmd|# apk --arch x86_64 -X &amp;lt;nowiki&amp;gt;https://dl-cdn.alpinelinux.org/alpine/edge/main/&amp;lt;/nowiki&amp;gt; --root /opt/busybox-container/rootfs --initdb --no-cache --allow-untrusted add busybox}}&lt;br /&gt;
{{Cmd|# cd /opt/busybox-container &amp;amp;&amp;amp; runc spec}}&lt;br /&gt;
{{Cmd|# runc run busybox-1}}&lt;br /&gt;
&lt;br /&gt;
== About ==&lt;br /&gt;
The creation of the root filesystem and the generation of the spec file is creating what is known as an OCI bundle. By using the Alpine Package Keeper (APK), we can create a bundle from pre-built software available for Alpine.&lt;br /&gt;
&lt;br /&gt;
The {{Cmd|runc spec}} command generates a config.json file which follows the [https://github.com/opencontainers/runtime-spec/blob/main/spec.md OCI Runtime Specification]. This configuration file can be modified to set-up mounts within the container amongst other settings.&lt;br /&gt;
&lt;br /&gt;
== Alternatives ==&lt;br /&gt;
An alternative to [https://github.com/containers/crun runc] is crun which is a fast and lightweight fully featured OCI runtime and C library for running containers.&lt;br /&gt;
The commands in the example above can be switched to use crun instead and it can be installed with {{Cmd|# apk add crun}}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/opencontainers/runc/tree/main?tab=readme-ov-file#using-runc Official User Guide]&lt;br /&gt;
&lt;br /&gt;
[[Category:Virtualization]]&lt;/div&gt;</summary>
		<author><name>Donno</name></author>
	</entry>
	<entry>
		<id>https://wiki.alpinelinux.org/w/index.php?title=Runc&amp;diff=30343</id>
		<title>Runc</title>
		<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/w/index.php?title=Runc&amp;diff=30343"/>
		<updated>2025-07-05T07:27:50Z</updated>

		<summary type="html">&lt;p&gt;Donno: Mention that this works with crun too.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:runc}}[https://github.com/opencontainers/runc runc] is a CLI tool for spawning and running containers on Linux according to the OCI specification, implemented in Go.. This page provides instructions to setup containers using runc.&lt;br /&gt;
&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&lt;br /&gt;
* Enable [[OpenRC#cgroups|cgroups]]&lt;br /&gt;
&lt;br /&gt;
== Set up a minimal container ==&lt;br /&gt;
&lt;br /&gt;
Here are the steps to create a minimal container using runc and Alpine Linux.&lt;br /&gt;
This creates an OCI bundle &lt;br /&gt;
&lt;br /&gt;
{{Cmd|# apk add runc}}&lt;br /&gt;
{{Cmd|# mkdir /opt/busybox-container}}&lt;br /&gt;
{{Cmd|# apk --arch x86_64 -X &amp;lt;nowiki&amp;gt;https://dl-cdn.alpinelinux.org/alpine/edge/main/&amp;lt;/nowiki&amp;gt; --root /opt/busybox-container/rootfs --initdb --no-cache --allow-untrusted add busybox}}&lt;br /&gt;
{{Cmd|# cd /opt/busybox-container &amp;amp;&amp;amp; runc spec}}&lt;br /&gt;
{{Cmd|# runc run busybox-1}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternatives ==&lt;br /&gt;
An alternative to [https://github.com/containers/crun runc] is crun which is a fast and lightweight fully featured OCI runtime and C library for running containers.&lt;br /&gt;
The commands in the example above can be switched to use crun instead and it can be installed with {{Cmd|# apk add crun}}.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/opencontainers/runc/tree/main?tab=readme-ov-file#using-runc Official User Guide]&lt;br /&gt;
&lt;br /&gt;
[[Category:Virtualization]]&lt;/div&gt;</summary>
		<author><name>Donno</name></author>
	</entry>
</feed>