-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Description
Bug Report
Describe the bug
Missing dependencies in the ARM32 image:
/fluent-bit/bin/fluent-bit: error while loading shared libraries: libatomic.so.1: cannot open shared object file: No such file or directory
There is a fix for it to just add the libatomic1 dependency to the runtime image so I will raise a PR for this.
Detected during the updates to add release automation and testing: #3753
It looks like this might be down to the recent update to systemd: #3177
To Reproduce
Set up multi-arch builds:
sudo apt-get install qemu binfmt-support qemu-user-static # Install the qemu packages
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
Confirm it supports an ARM 32 image:
docker run --rm -t arm64v8/ubuntu uname -m # Run an executable made for aarch64 on x86_64
WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64) and no specific platform was requested
aarch64
Checkout current master 3197e97
Patch in version 1.8.10 to the dockerfiles/Dockerfile.arm32v7 - otherwise it'll default to using 1.9.0 source which doesn't exist.
# Fluent Bit version
ENV FLB_MAJOR 1
ENV FLB_MINOR 8
ENV FLB_PATCH 10
ENV FLB_VERSION 1.8.10
Build the ARM 32 container image:
docker build -t arm32-test -f dockerfiles/Dockerfile.arm32v7 .
Run the ARM 32 container image:
docker run --rm -it arm32-test:latest
WARNING: The requested image's platform (linux/arm/v7) does not match the detected host platform (linux/amd64) and no specific platform was requested
/fluent-bit/bin/fluent-bit: error while loading shared libraries: libatomic.so.1: cannot open shared object file: No such file or directory
Expected behavior
No failures.
If I patch in the required dependency and rebuild then we're all good:
FROM arm32v7/debian:buster-slim
COPY --from=builder /usr/bin/qemu-arm-static /usr/bin/qemu-arm-static
RUN echo "deb http://deb.debian.org/debian buster-backports main" > /etc/apt/sources.list.d/backports.list && \
apt-get update && \
apt-get install -y --no-install-recommends \
libssl1.1 \
libsasl2-2 \
pkg-config \
libpq5 \
libsystemd0/buster-backports \
zlib1g \
ca-certificates \
libatomic1
Your Environment
- Version used: master build of 1.8.10 source
- Configuration: container builds of multiarch using Qemu
- Operating System and version: Ubuntu 20.04 amd64