@@ -46,8 +46,8 @@ other options.
46
46
47
47
Here's an example:
48
48
49
- ```
50
- $ podman run --privileged --pid=host --security-opt label=type:unconfined_t <image> bootc install --target-no-signature-verification /path/to/disk
49
+ ``` sh
50
+ podman run --privileged --pid=host --security-opt label=type:unconfined_t < image> bootc install --target-no-signature-verification /path/to/disk
51
51
```
52
52
53
53
Note that while ` --privileged ` is used, this command will not perform any
@@ -87,7 +87,7 @@ in that case you will need to specify `--skip-fetch-check`.
87
87
The container image must define its default install configuration. For example,
88
88
create ` /usr/lib/bootc/install/00-exampleos.toml ` with the contents:
89
89
90
- ```
90
+ ``` toml
91
91
[install ]
92
92
root-fs-type = " xfs"
93
93
```
@@ -104,7 +104,6 @@ prior setting.
104
104
The one exception to host requirements today is that the host must
105
105
have ` skopeo ` installed. This is a bug; more information in [ this issue] ( https://github.com/containers/bootc/issues/81 ) .
106
106
107
-
108
107
## Installing an "unconfigured" image
109
108
110
109
The bootc project aims to support generic/general-purpose operating
@@ -123,7 +122,7 @@ Other tools in this space are:
123
122
- [ systemd-firstboot] ( https://www.freedesktop.org/software/systemd/man/systemd-firstboot.html )
124
123
- [ gnome-initial-setup] ( https://gitlab.gnome.org/GNOME/gnome-initial-setup )
125
124
126
- The general idea here is that things like users, passwords and ssh keys
125
+ The general idea here is that things like users, passwords and ssh keys
127
126
are dynamically created on first boot (and in general managed per-system);
128
127
the configuration comes from a place * external* to the image.
129
128
@@ -150,7 +149,7 @@ from the default ostree `/etc` which may be locally writable.
150
149
The ` AuthorizedKeysFile ` invocation below then configures sshd to look
151
150
for keys in this location.
152
151
153
- ```
152
+ ``` Dockerfile
154
153
FROM <image>
155
154
RUN mkdir -p /usr/etc-system/ && \
156
155
echo 'AuthorizedKeysFile /usr/etc-system/%u.keys' >> /etc/ssh/sshd_config.d/30-auth-system.conf && \
@@ -164,7 +163,6 @@ the files are underneath `/usr`. To rotate or change the set of keys,
164
163
one would build a new container image. Client systems using ` bootc upgrade `
165
164
will transactionally update to this new system state.
166
165
167
-
168
166
## More advanced installation
169
167
170
168
The basic ` bootc install ` logic is really a pretty small (but opinionated) wrapper
@@ -199,7 +197,6 @@ storage or filesystem setups, but reuses the "top half" of the logic.
199
197
For example, a goal is to change [ Anaconda] ( https://github.com/rhinstaller/anaconda/ )
200
198
to use this.
201
199
202
-
203
200
### Using ` bootc install-to-filesystem --replace=alongside `
204
201
205
202
This is a variant of ` install-to-filesystem ` , which maximizes convenience for using
@@ -212,8 +209,8 @@ support the root storage setup already initialized.
212
209
213
210
The core command should look like this:
214
211
215
- ```
216
- $ podman run --privileged -v /:/target --pid=host --security-opt label=type:install_t \
212
+ ``` sh
213
+ podman run --privileged -v /:/target --pid=host --security-opt label=type:unconfined_t \
217
214
< image> \
218
215
bootc install-to-filesystem --replace=alongside /target
219
216
```
0 commit comments