You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
182
+
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
183
+
### Generic
184
+
185
+
-[Generic](#generic)
186
+
-["What's my login password?"](#whats-my-login-password)
187
+
-["Does Lima work on ARM Mac?"](#does-lima-work-on-arm-mac)
188
+
-["Can I run non-Ubuntu guests?"](#can-i-run-non-ubuntu-guests)
189
+
-["Can I run other container engines such as Podman?"](#can-i-run-other-container-engines-such-as-podman)
190
+
-["Can I run Lima with a remote Linux machine?"](#can-i-run-lima-with-a-remote-linux-machine)
191
+
-["Advantages compared to Docker for Mac?"](#advantages-compared-to-docker-for-mac)
192
+
-[QEMU](#qemu)
193
+
-["QEMU crashes with `HV_ERROR`"](#qemu-crashes-with-hv_error)
194
+
-["QEMU is slow"](#qemu-is-slow)
195
+
-[error "killed -9"](#error-killed--9)
196
+
-[SSH](#ssh)
197
+
-["Port forwarding does not work"](#port-forwarding-does-not-work)
198
+
-[error "field SSHPubKeys must be set"](#error-field-sshpubkeys-must-be-set)
199
+
-[error "hostkeys_foreach failed: No such file or directory"](#error-hostkeys_foreach-failed-no-such-file-or-directory)
200
+
-[error "failed to execute script ssh: [...] Permission denied (publickey)"](#error-failed-to-execute-script-ssh--permission-denied-publickey)
201
+
-["Hints for debugging other problems?"](#hints-for-debugging-other-problems)
202
+
203
+
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
196
204
### Generic
197
205
#### "What's my login password?"
198
206
Password is disabled and locked by default.
@@ -201,7 +209,7 @@ You have to use `limactl shell bash` (or `lima bash`) to open a shell.
201
209
Alternatively, you may also directly ssh into the guest: `ssh -p 60022 -o NoHostAuthenticationForLocalhost=yes 127.0.0.1`.
202
210
203
211
#### "Does Lima work on ARM Mac?"
204
-
Yes, it should work, but not tested on ARM.
212
+
Yes, it should work, but not regularly tested on ARM.
205
213
206
214
#### "Can I run non-Ubuntu guests?"
207
215
Fedora is also known to work, see [`./examples/fedora.yaml`](./examples/fedora.yaml).
@@ -211,7 +219,6 @@ An image has to satisfy the following requirements:
211
219
- systemd
212
220
- cloud-init
213
221
- The following binaries to be preinstalled:
214
-
-`curl`
215
222
-`sudo`
216
223
- The following binaries to be preinstalled, or installable via the package manager:
217
224
-`sshfs`
@@ -230,17 +237,49 @@ the predecessor or Lima, provides similar features for remote Linux machines.
230
237
e.g., run `sshocker -v /Users/foo:/home/foo/mnt -p 8080:80 <USER>@<HOST>` to expose `/Users/foo` to the remote machine as `/home/foo/mnt`,
231
238
and forward `localhost:8080` to the port 80 of the remote machine.
232
239
240
+
#### "Advantages compared to Docker for Mac?"
241
+
Lima is free software (Apache License 2.0), while Docker for Mac is not.
242
+
Their [EULA](https://www.docker.com/legal/docker-software-end-user-license-agreement) even prohibits disclosure of benchmarking result.
243
+
244
+
On the other hand, [Moby](https://github.com/moby/moby), aka Docker for Linux, is free software, but Moby/Docker lacks several novel features of containerd, such as:
-[Running an encrypted container](https://github.com/containerd/nerdctl/blob/master/docs/ocicrypt.md)
247
+
- Importing and exporting [local OCI archives](https://github.com/opencontainers/image-spec/blob/master/image-layout.md)
248
+
233
249
### QEMU
234
250
#### "QEMU crashes with `HV_ERROR`"
235
-
You have to add `com.apple.security.hypervisor` entitlement to `qemu-system-x86_64` binary.
236
-
See [Getting started](#getting-started).
251
+
If you have installed QEMU v6.0.0 or later on macOS 11 via homebrew, your QEMU binary should have been already automatically signed to enable HVF acceleration.
252
+
253
+
However, if you see `HV_ERROR`, you might need to sign the binary manually.
254
+
255
+
```bash
256
+
cat >entitlements.xml <<EOF
257
+
<?xml version="1.0" encoding="UTF-8"?>
258
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
Note: **Only** on macOS versions **before** 10.15.7 you might need to add this entitlement in addition:
271
+
272
+
```
273
+
<key>com.apple.vm.hypervisor</key>
274
+
<true/>
275
+
```
237
276
238
277
#### "QEMU is slow"
239
-
- Make sure that HVF is enabled with `com.apple.security.hypervisor` entitlement. See [Getting started](#getting-started).
278
+
- Make sure that HVF is enabled with `com.apple.security.hypervisor` entitlement. See ["QEMU crashes with `HV_ERROR`"](#qemu-crashes-with-hv_error).
240
279
- Emulating non-native machines (ARM-on-Intel, Intel-on-ARM) is slow by design.
241
280
242
281
#### error "killed -9"
243
-
- make sure qemu is codesigned, see [Getting started](#getting-started).
282
+
- make sure qemu is codesigned, See ["QEMU crashes with `HV_ERROR`"](#qemu-crashes-with-hv_error).
244
283
- if you are on macOS 10.15.7 or 11.0 or later make sure the entitlement `com.apple.vm.hypervisor` is **not** added. It only works on older macOS versions. You can clear the codesigning with `codesign --remove-signature /usr/local/bin/qemu-system-x86_64` and [start over](#getting-started).
0 commit comments