Added a Dockerfile that will fix missing libraries in the STS Agent

image.
This commit is contained in:
slawek committed 2026-10-19 17:17:25 +02:00
1 parent 93bb0b78a2
commit 9e86c566ae
3 files changed
+17 -4

No files matched your search

+5 -3
View File
@@ -99,7 +99,7 @@ The agent container runs with the following settings:
| Setting | Value | | Setting | Value |
|---|---| |---|---|
| Image | `gcr.io/cloud-ingest/tsop-agent:latest` | | Image | built from `sts-agent/Dockerfile` on `gcr.io/cloud-ingest/tsop-agent:latest` |
| Mount | `/mnt/ext-storage`, read only | | Mount | `/mnt/ext-storage`, read only |
| Mount | `/etc/sts-agent`, read only | | Mount | `/etc/sts-agent`, read only |
| Environment | `GOOGLE_APPLICATION_CREDENTIALS=/etc/sts-agent/cred.json` | | Environment | `GOOGLE_APPLICATION_CREDENTIALS=/etc/sts-agent/cred.json` |
@@ -117,11 +117,13 @@ STS_AGENT_POOL=my-agents
HOSTNAME=agent-host HOSTNAME=agent-host
``` ```
Start the agent: The image of Google lacks the shared glibc libraries that the `cryptography` package needs for certificate-based authentication. `sts-agent/Dockerfile` adds the glibc 2.27 libraries of Ubuntu 18.04, the glibc version of the agent launcher.
Build the image and start the agent:
```bash ```bash
cd sts-agent cd sts-agent
sudo docker compose up -d sudo docker compose up -d --build
``` ```
The directories are mounted at the same paths as on the host. The transfer job refers to the source directory by that path, and `certificate_config.json` holds the host paths of the certificate and key. The directories are mounted at the same paths as on the host. The transfer job refers to the source directory by that path, and `certificate_config.json` holds the host paths of the certificate and key.
+11
View File
@@ -0,0 +1,11 @@
FROM ubuntu:18.04 AS glibc
FROM gcr.io/cloud-ingest/tsop-agent:latest
# Shared glibc 2.27 libraries, matching the glibc of the static launcher, needed by the cryptography binding for certificate-based authentication.
COPY --from=glibc /lib/x86_64-linux-gnu/libc-2.27.so /lib/x86_64-linux-gnu/libc.so.6
COPY --from=glibc /lib/x86_64-linux-gnu/libm-2.27.so /lib/x86_64-linux-gnu/libm.so.6
COPY --from=glibc /lib/x86_64-linux-gnu/libpthread-2.27.so /lib/x86_64-linux-gnu/libpthread.so.0
COPY --from=glibc /lib/x86_64-linux-gnu/ld-2.27.so /lib64/ld-linux-x86-64.so.2
ENV LD_LIBRARY_PATH=/lib/x86_64-linux-gnu
+1 -1
View File
@@ -1,6 +1,6 @@
services: services:
sts-agent: sts-agent:
image: gcr.io/cloud-ingest/tsop-agent:latest build: .
ulimits: ulimits:
memlock: 64000000 memlock: 64000000
volumes: volumes: