docker-elixir
docker-elixir copied to clipboard
1.13-alpine rebuilt 10 hours ago now getting errors
We have an issue where the following error in our containers:
Error relocating /app/erts-12.3.2.1/bin/beam.smp: _ZSt28__throw_bad_array_new_lengthv: symbol not found Error relocating /app/erts-12.3.2.1/bin/beam.smp: pthread_getname_np: symbol not found
We are building in a container created from image elixir:1.13-alpine
and then running the artifact in a container created from image alpine:3.14
. Up until yesterday this was working. When I check dockerhub the elixir:1.13-alpine
image was rebuilt 10 hours ago.
I'm also seeing someone having similar issues here: https://stackoverflow.com/questions/72609505/issue-with-building-elixir-and-beam-on-alpine-linux
Is there anything we can do to address this?
The same issue appeared to me in elixir:1.12-alpine
image, what's the reason in general to update images with already existing tag?
I've confirmed it's most likely coming from the latest build of erlang. If I pull the docker-elixir repo and hardcode to a previous of erlang by changing the first line of docker-elixir/1.13/alpine/Dockerfile
from FROM erlang:24-alpine
to FROM erlang:24.3.4.0-alpine
This gives me an image that allows builds to succeed.
FWIW: The stackoverflow article has mentions of upgrading to alpine 3.16 resolving the issue. I tried that on our builds and it didn't seem to help
FWIW: The stackoverflow article has mentions of upgrading to alpine 3.16 resolving the issue. I tried that on our builds and it didn't seem to help
freeze version with path 3
for example (FROM elixir:1.11.3-alpine or FROM elixir:1.13.3-alpine)
Upgrading to Alpine 3.16 worked for me.
If you want a more stable docker image it's better to use https://hub.docker.com/r/hexpm/elixir That one has tags for the combination of elixir -> erlang -> linux version
Thanks for the link to the more stable builds, I will try that! We currently have an Alpine version check in the Dockerfile that causes the build to fail if there is a mismatch between the Elixir image and Alpine version selected. Done by comparing /etc/alpine-release
to a known good value.