-
Bug ReportDescriptionI'm trying to run a zot registry as an extension, I am able to add it to my installer but the extension fails to start with the following error:
The binary is however present: $ talosctl ls -lH /usr/local/lib/containers/zot/
NODE MODE UID GID SIZE(B) LASTMOD LABEL NAME
10.0.42.136 drwxr-xr-x 0 0 160 B 6 minutes ago .
10.0.42.136 drwxr-xr-x 0 0 40 B 6 minutes ago dev
10.0.42.136 drwxr-xr-x 0 0 80 B 6 minutes ago etc
10.0.42.136 drwxr-xr-x 0 0 40 B 6 minutes ago proc
10.0.42.136 drwxr-xr-x 0 0 40 B 6 minutes ago run
10.0.42.136 drwxr-xr-x 0 0 40 B 6 minutes ago sys
10.0.42.136 drwxr-xr-x 0 0 60 B 6 minutes ago var
10.0.42.136 -rwxr-xr-x 0 0 45 MB 15 minutes ago zot
$ talosctl read /usr/local/etc/containers/zot.yaml
name: zot
container:
entrypoint: ./zot
args:
- serve
- /var/lib/zot/config.yaml
mounts:
- source: /var/lib/zot
destination: /var/lib/zot
type: bind
options:
- rshared
- rbind
- rw
depends:
- network:
- addresses
- service: cri
restart: always
$ talosctl get mc -o yaml | yq .spec | yq 'select(.name == "zot")'
apiVersion: v1alpha1
kind: ExtensionServiceConfig
name: zot
configFiles:
- content: |
{
"storage": {
"rootDirectory": "/var/lib/zot/data"
},
"http": {
"address": "0.0.0.0",
"port": "5000",
"compat": [
"docker2s2"
]
},
"log": {
"level": "info"
},
}
mountPath: /var/lib/zot/config.yaml The executable is built for the Any idea what could be causing this issue? Thanks in advance. Environment
|
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 6 replies
-
Converted this into a discussions, as it's a question. This error usually means that a shared library required by the executable is missing in the container. Extensions solve it one of several ways:
Either way is fine. The error can be easily reproduced by copying out the extensions service rootfs as a separate container image and doing |
Beta Was this translation helpful? Give feedback.
-
Thanks for the quick reply. Well, the file was indeed dynamically linked to musl, which was missing:
But even after adding
|
Beta Was this translation helpful? Give feedback.
Converted this into a discussions, as it's a question.
This error usually means that a shared library required by the executable is missing in the container.
Extensions solve it one of several ways:
Either way is fine.
The error can be easily reproduced by copying out the extensions service rootfs as a separate container image and doing
docker run
on it.