loft-sh / devpod

Codespaces but open-source, client-only and unopinionated: Works with any IDE and lets you use any cloud, kubernetes or just localhost docker.
https://devpod.sh
Mozilla Public License 2.0
9.57k stars 349 forks source link

Error with podman/conmon/glib #1193

Open nneto opened 4 months ago

nneto commented 4 months ago

What happened?
Error when opening workspace with podman as provider. Along the log is this error: start command: /usr/bin/conmon: symbol lookup error: /usr/bin/conmon: undefined symbol: g_assertion_message_cmpint

What did you expect to happen instead?
Open a workspace just like it does with docker as the provider.

How can we reproduce the bug? (as minimally and precisely as possible)

  1. Add a new provider;
  2. Edit the advanced options replacing the docker in Docker Path for podman or the path for podman;
  3. Create a workspace using the podman provider.

My devcontainer.json:

{"image":"mcr.microsoft.com/devcontainers/java"}

Local Environment:

DevPod Provider:

Anything else we need to know?

Complete log in debug mode ``` {"type":"data","data":{"time":"2024-07-29T23:41:20.198566913-03:00","message":"Workspace test already exists","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.19964114-03:00","message":"Acquire workspace lock...","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.199682556-03:00","message":"Acquired workspace lock...","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.200295762-03:00","message":"Creating devcontainer...","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.200397031-03:00","message":"Adding ssh keys to agent, disable via 'devpod context set-options -o SSH_ADD_PRIVATE_KEYS=false'","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.200550053-03:00","message":"Inject and run command: '/tmp/.mount_devpodXYgSPC/usr/bin/devpod-cli' helper ssh-server --stdio --debug","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.201066738-03:00","message":"Attempting to create SSH client","level":"debug"}} {"type":"error","error":{"time":"2024-07-29T23:41:20.201611849-03:00","message":"Execute command locally","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.316909422-03:00","message":"SSH client created","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.317070686-03:00","message":"SSH session created","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.317084584-03:00","message":"Forwarding ssh-agent using /run/user/1000/keyring/ssh","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.318246811-03:00","message":"Execute SSH server command: bash -c '/tmp/.mount_devpodXYgSPC/usr/bin/devpod-cli' agent workspace up --workspace-info 'H4sIAAAAAAAA/7xSTU8bPRD+L3P2rpcAel/5RkNaotImCpuq9BIZe5I1+GPl8S5IKP+9cr4RcO1xxs+M5/l4hecQn6iVCifRrIwHAbyXkTfBIfctEgXJS419GzRXwSd8ScQ1LmVnEz8ME29DMm0MJ73ykYIHdvwBxCsYDQL2WGDQvWkUukCtLpfAoI2hNxpjHvLS4QalncwbQ5tM8JSfrifD76PZYnpV3+Syl7bLUN5R5A/G88NMRxin250aRIodrhmMf14N6/GvcX2/qMc/RpN5nZd8AF2vGTipGuMzizUDo/Hksp5U0AhrBhS6uGVqg5L2a7AbDh+Ieh1U59An4glde9AvL1ERZWZYG4eUpGtBwKAaXBTVf8V5VVdn4uJcXA7+AAMrKc0p3/kGMRAXZ2JQZcTONBCwcy3/IFfo0+FKEJBZZtVlavK1ybW8dKHzabH1/vf96m46PMi6bRbKGmCgw7O3Qer57BYENCm1JDhfmdR0D6UKjtuwTAU1uyke0aIkJL4f5H1VXpZn/wMD4x9RpW8mDSNq9MlIS8fz8AXVVn8d1BNGi0SndWa0p/AuAcZTkjaTXUpLG7dURym4vCEX1kyOwdoYfGLs+8x9mY9vr0ezTxLD9rCbyd1nqWL/Lr5/AQAA//8BAAD//8A3J+vpAwAA' --debug","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.347205544-03:00","message":"Use /var/home/npessoa/.devpod/agent/contexts/default/workspaces/test as workspace dir","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.348045524-03:00","message":"Created logger","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.348356457-03:00","message":"Received ping from agent","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:20.349474893-03:00","message":"Credentials server started on port 16810...","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.351008086-03:00","message":"Incoming client connection at /","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.351362251-03:00","message":"Credentials server started...","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.351687711-03:00","message":"Workspace Folder already exists /var/home/nnn/Documents/temp/test","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.351959253-03:00","message":"Workspace exists, skip downloading","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.352230796-03:00","message":"Using docker command '/usr/bin/podman'","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592452989-03:00","message":"exit status 125","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592473104-03:00","message":"start command: /usr/bin/conmon: symbol lookup error: /usr/bin/conmon: undefined symbol: g_assertion_message_cmpint","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592480158-03:00","message":"Error: unable to start container \"5c6bd9594dde26d007ff316067053cb7864bc8fc5fd0b5b17cbe727310af1b0f\": conmon failed: exit status 127","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592487281-03:00","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.5924921-03:00","message":"github.com/loft-sh/devpod/pkg/docker.(*DockerHelper).StartContainer","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592497408-03:00","message":"/home/runner/work/devpod/devpod/pkg/docker/helper.go:160","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592509281-03:00","message":"github.com/loft-sh/devpod/pkg/driver/docker.(*dockerDriver).StartDevContainer","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592517802-03:00","message":"/home/runner/work/devpod/devpod/pkg/driver/docker/docker.go:134","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592523599-03:00","message":"github.com/loft-sh/devpod/pkg/devcontainer.(*runner).runSingleContainer","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592529885-03:00","message":"/home/runner/work/devpod/devpod/pkg/devcontainer/single.go:41","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592537427-03:00","message":"github.com/loft-sh/devpod/pkg/devcontainer.(*runner).Up","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592543154-03:00","message":"/home/runner/work/devpod/devpod/pkg/devcontainer/run.go:121","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592549789-03:00","message":"github.com/loft-sh/devpod/cmd/agent/workspace.(*UpCmd).devPodUp","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592556075-03:00","message":"/home/runner/work/devpod/devpod/cmd/agent/workspace/up.go:407","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592563269-03:00","message":"github.com/loft-sh/devpod/cmd/agent/workspace.(*UpCmd).up","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592569345-03:00","message":"/home/runner/work/devpod/devpod/cmd/agent/workspace/up.go:161","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.59257605-03:00","message":"github.com/loft-sh/devpod/cmd/agent/workspace.(*UpCmd).Run","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592580799-03:00","message":"/home/runner/work/devpod/devpod/cmd/agent/workspace/up.go:95","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592590926-03:00","message":"github.com/loft-sh/devpod/cmd/agent/workspace.NewUpCmd.func1","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.59259805-03:00","message":"/home/runner/work/devpod/devpod/cmd/agent/workspace/up.go:53","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592604615-03:00","message":"github.com/spf13/cobra.(*Command).execute","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592609923-03:00","message":"/home/runner/work/devpod/devpod/vendor/github.com/spf13/cobra/command.go:983","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592617535-03:00","message":"github.com/spf13/cobra.(*Command).ExecuteC","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592623332-03:00","message":"/home/runner/work/devpod/devpod/vendor/github.com/spf13/cobra/command.go:1115","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592630945-03:00","message":"github.com/spf13/cobra.(*Command).Execute","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592640862-03:00","message":"/home/runner/work/devpod/devpod/vendor/github.com/spf13/cobra/command.go:1039","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592649034-03:00","message":"github.com/loft-sh/devpod/cmd.Execute","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592656297-03:00","message":"/home/runner/work/devpod/devpod/cmd/root.go:90","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592663351-03:00","message":"main.main","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592669427-03:00","message":"/home/runner/work/devpod/devpod/main.go:6","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592676551-03:00","message":"runtime.main","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592682208-03:00","message":"/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.22.5.linux-amd64/src/runtime/proc.go:271","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592692754-03:00","message":"runtime.goexit","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592701135-03:00","message":"/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.22.5.linux-amd64/src/runtime/asm_amd64.s:1695","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592709656-03:00","message":"devcontainer up","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592722576-03:00","message":"github.com/loft-sh/devpod/cmd/agent/workspace.(*UpCmd).Run","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.59272977-03:00","message":"/home/runner/work/devpod/devpod/cmd/agent/workspace/up.go:97","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592735916-03:00","message":"github.com/loft-sh/devpod/cmd/agent/workspace.NewUpCmd.func1","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592743459-03:00","message":"/home/runner/work/devpod/devpod/cmd/agent/workspace/up.go:53","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592749256-03:00","message":"github.com/spf13/cobra.(*Command).execute","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592756449-03:00","message":"/home/runner/work/devpod/devpod/vendor/github.com/spf13/cobra/command.go:983","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592764132-03:00","message":"github.com/spf13/cobra.(*Command).ExecuteC","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592777332-03:00","message":"/home/runner/work/devpod/devpod/vendor/github.com/spf13/cobra/command.go:1115","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592784176-03:00","message":"github.com/spf13/cobra.(*Command).Execute","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592789345-03:00","message":"/home/runner/work/devpod/devpod/vendor/github.com/spf13/cobra/command.go:1039","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592794094-03:00","message":"github.com/loft-sh/devpod/cmd.Execute","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592798424-03:00","message":"/home/runner/work/devpod/devpod/cmd/root.go:90","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592802614-03:00","message":"main.main","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592806944-03:00","message":"/home/runner/work/devpod/devpod/main.go:6","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592811764-03:00","message":"runtime.main","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592817071-03:00","message":"/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.22.5.linux-amd64/src/runtime/proc.go:271","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592840817-03:00","message":"runtime.goexit","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.592857929-03:00","message":"/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.22.5.linux-amd64/src/runtime/asm_amd64.s:1695","level":"info"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.595962578-03:00","message":"Connection to SSH Server closed","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.596004483-03:00","message":"Done creating devcontainer","level":"debug"}} {"type":"data","data":{"time":"2024-07-29T23:41:21.598730244-03:00","message":"Done executing ssh server helper command","level":"debug"}} {"type":"error","error":{"time":"2024-07-29T23:41:21.787225134-03:00","message":"Process exited with status 1\nrun agent command\ngithub.com/loft-sh/devpod/pkg/devcontainer/sshtunnel.ExecuteCommand.func2\n\t/home/runner/work/devpod/devpod/pkg/devcontainer/sshtunnel/sshtunnel.go:129\nruntime.goexit\n\t/home/runner/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.22.5.linux-amd64/src/runtime/asm_amd64.s:1695","level":"fatal"}} ```
dominiwe commented 3 months ago

I was able to reproduce this issue and gather some more information/logs.

Devpod appimage version: 0.5.18 Podman version: 5.1.2

Here is a full debug log (with some lines redacted):

pascalbreuninger commented 2 months ago

Hi @nneto , thanks for opening this issue. Which linux distro are you on? Apparently this issue arises on alpine, could you see if the proposed solution here fixes your issue please?

nneto commented 2 months ago

Hi @nneto , thanks for opening this issue. Which linux distro are you on? Apparently this issue arises on alpine, could you see if the proposed solution here fixes your issue please?

Hi! I'm on Fedora Linux 40 (Workstation Edition) at work. My computer at home is also Fedora but the Silverblue version, so installing packages would not be ideal in it... Nonetheless, I installed the glib2-devel package on both machines, rebooted, and still got the error.

dominiwe commented 2 months ago

For me, this issue arised on Arch linux and the proposed fix also did not help.