1toolbox-create(1)()                                        toolbox-create(1)()
2
3
4

NAME

6       toolbox-create - Create a new toolbox container
7
8

SYNOPSIS

10       toolbox create [--distro DISTRO | -d DISTRO]
11                      [--image NAME | -i NAME]
12                      [--release RELEASE | -r RELEASE]
13                      [CONTAINER]
14
15

DESCRIPTION

17       Creates  a  new  toolbox  container. You can then use the toolbox enter
18       command to interact with the container at any point.
19
20
21       A toolbox container is an OCI container created from an OCI  image.  On
22       Fedora,  the default image is known as fedora-toolbox:N, where N is the
23       release of the host. If the image is not present locally,  then  it  is
24       pulled  from  a  well-known  registry  like registry.fedoraproject.org.
25       Other images may be used on other host operating systems. If  the  host
26       is not recognized, then the Fedora image will be used.
27
28
29       The container is created with podman create, and its entry point is set
30       to toolbox init-container.
31
32
33       By default, a toolbox container is named after its corresponding image.
34       If  the  image  had  a tag, then the tag is included in the name of the
35       container, but it's separated by a hyphen, not  a  colon.  A  different
36       name can be assigned by using the CONTAINER argument.
37
38
39   Container Configuration
40       A  toolbox container seamlessly integrates with the rest of the operat‐
41       ing system by providing access to the user's home directory,  the  Way‐
42       land  and  X11 sockets, networking (including Avahi), removable devices
43       (like USB sticks), systemd journal, SSH agent, D-Bus, ulimits, /dev and
44       the udev database, etc..
45
46
47       The  user  ID  and account details from the host is propagated into the
48       toolbox container, SELinux label separation is disabled, and  the  host
49       file  system  can  be  accessed by the container at /run/host. The con‐
50       tainer has access to the host's Kerberos credentials cache if it's con‐
51       figured to use KCM caches.
52
53
54       A  toolbox  container  can  be  identified  by  the com.github.contain‐
55       ers.toolbox label or the /run/.toolboxenv file.
56
57
58       The entry point of a toolbox container is  the  toolbox  init-container
59       command  which plays a role in setting up the container, along with the
60       options passed to podman create.
61
62
63   Entry Point
64       A key feature of toolbox containers is their entry point,  the  toolbox
65       init-container command.
66
67
68       OCI  containers  are inherently immutable. Configuration options passed
69       through podman create are baked into the definition  of  the  OCI  con‐
70       tainer,  and  can't  be  changed later. This means that changes and im‐
71       provements made in newer versions of Toolbox can't be applied  to  pre-
72       existing  toolbox containers created by older versions of Toolbox. This
73       is avoided by using the entry point to configure the container at  run‐
74       time.
75
76
77       The  entry point of a toolbox container customizes the container to fit
78       the current user by ensuring that it has a user that matches the one on
79       the host, and grants it sudo and root access.
80
81
82       Crucial   configuration  files,  such  as  /etc/host.conf,  /etc/hosts,
83       /etc/localtime, /etc/resolv.conf and  /etc/timezone,  inside  the  con‐
84       tainer  are  kept synchronized with the host. The entry point also bind
85       mounts various subsets of the host's filesystem hierarchy to their cor‐
86       responding  locations inside the container to provide seamless integra‐
87       tion with the host. This includes  /run/libvirt,  /run/systemd/journal,
88       /run/udev/data,       /var/lib/libvirt,      /var/lib/systemd/coredump,
89       /var/log/journal and others.
90
91
92       On some host operating systems, important paths like /home,  /media  or
93       /mnt  are  symbolic  links  to other locations. The entry point ensures
94       that paths inside the container match those on the host, to avoid need‐
95       less confusion.
96
97

OPTIONS

99       --distro DISTRO, -d DISTRO
100
101
102       Create a toolbox container for a different operating system DISTRO than
103       the host. Cannot be used with --image.
104
105
106       --image NAME, -i NAME
107
108
109       Change the NAME of the base image used to create the toolbox container.
110       This  is  useful for creating containers from custom-built base images.
111       Cannot be used used with --release.
112
113
114       If NAME does not contain a registry, the local image  storage  will  be
115       consulted,  and if it's not present there then it will be pulled from a
116       suitable remote registry.
117
118
119       --release RELEASE, -r RELEASE
120
121
122       Create a toolbox container for a  different  operating  system  RELEASE
123       than the host. Cannot be used with --image.
124
125

EXAMPLES

127   Create a toolbox container using the default image matching the host OS
128              $ toolbox create
129
130
131
132   Create a toolbox container using the default image for Fedora 30
133              $ toolbox create --distro fedora --release f30
134
135
136
137   Create a custom toolbox container from a custom image
138              $ toolbox create --image bar foo
139
140
141

SEE ALSO

143       toolbox(1), toolbox-init-container(1), podman(1), podman-create(1)
144
145
146
147                                                           toolbox-create(1)()
Impressum