lando / core

Current Lando v3 runtime
https://docs.lando.dev/core/v3
GNU General Public License v3.0
10 stars 22 forks source link

Proxy - error mounting /certs/cert.key #242

Closed mmodler closed 2 days ago

mmodler commented 5 days ago

We run the same setup and we're experiencing the same error as mentioned here: lando/lando#3753

Windows 11 with Docker Desktop + WSL2 + Ubuntu and lando stable / latest

If i delete the proxy container and rebuild the project, it will work once. But if i start a project using the existing proxy, this error occurs:

[+] Running 0/1
 ⠼ Container landoproxyhyperion5000gandalfedition_proxy_1  Starting                                                                                        0.4s
Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu/bc29ed73dc19b30f457445d9810ca1b50fe071fa416628197a9bde8f1d2102dd" to rootfs at "/certs/cert.key": mount /run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu/bc29ed73dc19b30f457445d9810ca1b50fe071fa416628197a9bde8f1d2102dd:/certs/cert.key (via /proc/self/fd/6), flags: 0x5000: no such file or directory: unknown
ERROR ==> UNKNOWN ERROR
[+] Running 0/1
 ⠦ Container removedcustomername_appserver_1  Starting                                                                                                      0.6s
Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu/cd76ef32516139e2987f3e7905bf95699c81a22c2b9aad98f4fa5d20b6ebc0b5" to rootfs at "/certs/cert.crt": mount /run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu/cd76ef32516139e2987f3e7905bf95699c81a22c2b9aad98f4fa5d20b6ebc0b5:/certs/cert.crt (via /proc/self/fd/6), flags: 0x5000: no such file or directory: unknown
ERROR ==>
services:
  appserver:
    type: php:8.2
    via: apache:2.4
    ssl: true
mmodler commented 5 days ago

Is there any option to downgrade lando so we can work without the nasty delete-proxy-workaround?

reynoldsalec commented 5 days ago

@mmodler are you running the Pantheon recipe?

A large number of updates to recipes were pushed out Friday that seem to have addressed lando/lando#3753, so it's possible that updating your plugins (lando update) will resolve this for you.

mmodler commented 4 days ago

@reynoldsalec I don't use a recipe. I also checked the "edge" releases yesterday, but with the issue persists.

Atm to switch the project, we need to delete the proxy and rebuild.

eldair commented 4 days ago

@reynoldsalec same here for laravel recipe (using nginx), everything is up to date.

socrates77 commented 4 days ago

Same error here. The error begin popping up after update lando in the morning 2024-10-22 I'm using WordPress recipe.

[+] Running 0/1 ⠴ Container landoproxyhyperion5000gandalfedition_proxy_1 Starting 0.5s Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu-20.04/c6927c0d5062fe5fdbc83f8c78c79bcbee677ab08214a4c83d3bd1cc5a4afb2f" to rootfs at "/certs/cert.key": mount /run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu-20.04/c6927c0d5062fe5fdbc83f8c78c79bcbee677ab08214a4c83d3bd1cc5a4afb2f:/certs/cert.key (via /proc/self/fd/6), flags: 0x5000: no such file or directory: unknown lando process pid3 finished with exit code 1 +653ms

rivanuff commented 4 days ago

Same here, same setup as OP

pirog commented 4 days ago

For an update here: @AaronFeledy and i spent some time looking at this earlier and have a couple ways we might be able to resolve it. Currently investigating and will update when we know more.

AndrejKoch commented 3 days ago

Same issue laravel, php 8.2, nginx

[+] Running 0/1 ⠼ Container landoproxyhyperion5000gandalfedition_proxy_1 Starting 0.4s Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu/783b13640c54b7a8d4e51e14a4bcb256e83e4a6899c7f4de3d3b70b0554ea94e" to rootfs at "/certs/cert.crt": mount /run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu/783b13640c54b7a8d4e51e14a4bcb256e83e4a6899c7f4de3d3b70b0554ea94e:/certs/cert.crt (via /proc/self/fd/6), flags: 0x5000: no such file or directory: unknown ERROR ==> UNKNOWN ERROR

agoradesign commented 3 days ago

same here.. using drupal10 recipe on different projects... the problem popped up by the end of last week. And just for a single day (Monday), I thought that the Lando updates had fixed the problem for me, because there were no errors on startup and the proxy urls did work again.. however, since yesterday the problem re-appeared. Projects only start once (on rebuild), always show this error and proxies do not work

pirog commented 2 days ago

alright i think we've tracked this down and will push out in a new release. This will be an edge release so you'll need to

# switch to edge channel
lando --channel edge

# update to latest
lando update

You also may have to trash the proxy and each app to proceed but you should be good after that

# trash proxy
docker rm -f landoproxyhyperion5000gandalfedition_proxy_1

# trash app
lando destroy -y

# start app
lando start

# assess whether this fixes things
lando poweroff
lando start
agoradesign commented 2 days ago

thank you so much!! works for me :)

I've trashed the proxy, without trying otherwise. I've also trashed the first project I've tried, but on a second I just tried to rebuild, and that worked too

pirog commented 2 days ago

@agoradesign i think that will just temporarily unblock you but im rolling a release now that should have a permanent fix, it should be available within the hour

socrates77 commented 1 day ago

Hi i don't know if it's related with the previous error. After update I can't start correctly the proxy:

[+] Running 4/4
 ✔ Network landoproxyhyperion5000gandalfedition_edge           Created                                                                                                                 0.1s
 ✔ Volume "landoproxyhyperion5000gandalfedition_proxy_config"  Created                                                                                                                 0.0s
 ✔ Volume "landoproxyhyperion5000gandalfedition_home_proxy"    Created                                                                                                                 0.0s
 ✔ Container landoproxyhyperion5000gandalfedition_proxy_1      Started                                                                                                                 0.6s
  lando process pid4 finished with exit code 0  +2080ms
  lando emitting event post-engine-start  +1ms
  citta-nuova-2024 ERROR URL.parse is not a function  +3003ms
  citta-nuova-2024   +1ms
  citta-nuova-2024 reporting error action to report=true, url=https://metrics.lando.dev, report=true, url=https://metrics.lando.dev +1ms
  citta-nuova-2024 reported data command=lando start, context=local, devMode=false, instance=b1d7e95d79629cdfc03c6c85b66bc95db5322c89, nodeVersion=v18.19.1, mode=cli, type=Linux, platform=linux, release=5.15.153.1-microsoft-standard-WSL2, arch=x64, isWsl=true, product=lando, version=3.23.0-beta.7, message=URL.parse is not a function, action=error, created=2024-10-25T07:38:19.238Z +0ms
socrates77 commented 1 day ago

Hi i'd like to add some more info

I find a typo in file @lando/core/plugins/proxy/lib/utils.js line 64

const {hostname, port, pathname} = URL.parse(route.hostname);

should be

const {hostname, port, pathname} = url.parse(route.hostname);

AndrejKoch commented 1 day ago

After the update, I got the same URL.parse error like @socrates77. I decided to do a fresh install on lando and after that I am getting the mount error again: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu/2907755a463331b06d0a403c7cec3d97165b4e999b8c88e6856d2ccef2b8a588" to rootfs at "/certs/cert.crt": mount /run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu/2907755a463331b06d0a403c7cec3d97165b4e999b8c88e6856d2ccef2b8a588:/certs/cert.crt (via /proc/self/fd/6), flags: 0x5000: no such file or directory: unknown afp-admin process pid6 finished with exit code 1 +1603ms afp-admin ERROR +1ms

I can start the project only by removing the landoproxyhyperion5000gandalfedition container and doing lando rebuild

pirog commented 1 day ago

If you are running from source you need to be running on node 20.

If you are installing lando using the installer script you need to use the advanced method and install the edge version otherwise it will pull stable by default. lando version and it should be v3.23.0-beta.5 or higher.

Also make sure you arent using an older version of the CLI with a newer version of CORE, see https://github.com/lando/cli/issues/263