containers / containers/toolbox

Cannot enter container (glibc issue)

Open
#1,383 0 comments 0 reactions 0 assignees View on GitHub
1. Bug 2. Container Initialization
Dominant language
Go
Stars
3.5k
Forks
262
Avg merge
3d 1h
Merged PRs (30d)
1

Description

**Describe the bug**
I am attempting to create and enter a container for Valve's steam runtime 'sniper' as described [here](https://gitlab.steamos.cloud/steamrt/sniper/sdk/-/blob/steamrt/sniper/doc/toolbx.md). The image is created fine, but the first time I attempt to enter it I get the error:
`Error: failed to initialize container sniper`
On subsequent attempts to enter it I get the error:
`Error: invalid entry point PID of container sniper`

Judging by journalctl it seems to be an error with the glibc version:
```
Sep 30 15:43:11 gbox sniper[148294]: toolbox: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by toolbox)
Sep 30 15:43:11 gbox sniper[148294]: toolbox: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by toolbox)
```

`podman start --attach sniper` reports the same errors.
```
toolbox: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by toolbox)
toolbox: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by toolbox)
```

Entering the image via podman I can see the glibc version in the container is 2.31 while the system I compiled toolbox on is 2.38.

**Steps how to reproduce the behaviour**
Follow Valve's instructions to create and enter the toolbox container [here](https://gitlab.steamos.cloud/steamrt/sniper/sdk/-/blob/steamrt/sniper/doc/toolbx.md).

**Expected behaviour**
Enter the container successfully

**Actual behaviour**
Fail to enter the container with error:
`Error: invalid entry point PID of container sniper`

**Output of `toolbox --version` (v0.0.90+)**
toolbox version 0.0.99.4

**Output of `podman version`**
```
Client: Podman Engine
Version: 4.5.0
API Version: 4.5.0
Go Version: go1.21.1
Git Commit: 75e3c12579d391b81d871fd1cded6cf0d043550a
Built: Fri Sep 29 13:42:48 2023
OS/Arch: linux/amd64
```

**Info about your OS**
Gentoo Linux

Contributor guide

Open the contributing guide

Research direction

Start by following Valve's linked toolbox instructions to reproduce the failure, then inspect journalctl and podman start --attach for the GLIBC errors. Done means entering the sniper container succeeds without the initialization or invalid-entry-point errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, linux
Domain
cli, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.