logstash
logstash copied to clipboard
Logstash docker images from 8.12.0 do not work on arm64
Description of the problem including expected versus actual behavior: arm64 containers published in Docker Hub cannot be used on arm64 machines due to statically compiled env2yaml for x86_64 https://hub.docker.com/_/logstash/tags https://github.com/elastic/dockerfiles/blob/8.12/logstash/env2yaml/env2yaml
file env2yaml
env2yaml: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, Go BuildID=140w3zQetTF9vuXn8SKh/6VTmqmUurR6W4U1d2djn/ygzO-s0DW7lKAPv4StdI/yrDHA-k7UMQhDh1cXjqi, with debug_info, not stripped
Steps to reproduce:
- Use an arm64 architecture machine
- docker run logstash:8.12.0
Good catch! It seems the jobs creating the "logstash:
logstash:8.12.0
❯ docker run -q --platform=linux/arm64 --rm --entrypoint cat logstash:8.12.0 /usr/local/bin/env2yaml > env2yaml && file env2yaml
env2yaml: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, Go BuildID=140w3zQetTF9vuXn8SKh/6VTmqmUurR6W4U1d2djn/ygzO-s0DW7lKAPv4StdI/yrDHA-k7UMQhDh1cXjqi, with debug_info, not stripped
❯ docker run -q --platform=linux/amd64 --rm --entrypoint cat logstash:8.12.0 /usr/local/bin/env2yaml > env2yaml && file env2yaml
env2yaml: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, Go BuildID=140w3zQetTF9vuXn8SKh/6VTmqmUurR6W4U1d2djn/ygzO-s0DW7lKAPv4StdI/yrDHA-k7UMQhDh1cXjqi, with debug_info, not stripped
docker.elastic.co/logstash/logstash:8.12.0
❯ docker run -q --platform=linux/arm64 --rm --entrypoint cat docker.elastic.co/logstash/logstash:8.12.0 /usr/local/bin/env2yaml > env2yaml && file env2yaml
env2yaml: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), statically linked, Go BuildID=QYY-PtaHFDEDpFjmTufT/PjrWinQ9r2i2vz0aIqwX/QIJ5qqkDzlYatd5vGwbG/5PkcWW24n8AsRkRjSP0z, with debug_info, not stripped
❯ docker run -q --platform=linux/amd64 --rm --entrypoint cat docker.elastic.co/logstash/logstash:8.12.0 /usr/local/bin/env2yaml > env2yaml && file env2yaml
env2yaml: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, Go BuildID=140w3zQetTF9vuXn8SKh/6VTmqmUurR6W4U1d2djn/ygzO-s0DW7lKAPv4StdI/yrDHA-k7UMQhDh1cXjqi, with debug_info, not stripped