Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

elixir:1.14-alpine crashes silently when running in certain situations #76

Open
srevenant opened this issue May 24, 2023 · 1 comment
Open

Comments

@srevenant
Copy link

srevenant commented May 24, 2023

I just moved from elixir:1.13-alpine to 1.14.
Mostly it works fine, except when run one specific way.

My container set is built two ways, and only one variant causes this problem:

  1. One container is built with the application as a release. This container works fine when running the service.
  2. Another container is built (for debug purposes) with just the application as a mix project pre-release.
  3. Running the debug container standalone with 'mix start' (what starts our service) and it runs fine
  4. Running the debug container as a docker swarm service with the entrypoint being 'sleep 50000000' (to get an idle background container); THEN, running 'docker exec -it {id} /bin/bash' to get into the container, and running any erlang/elixir/iex/mix command will cause the entire container to exit, with NO COMMAND OUTPUT, which is extremely curious. This happens running 'iex' and 'erlang' as well.

I can run other alpine commands (ps, ls, etc) with no problem.
I can install python and have it grab tons of memory (I killed it after 8G) and it isn't OOMkilled.

Enabling debug in docker didn't show any valuable info. The container is just exiting of its own choice:

May 24 15:39:15 devops dockerd[9801]: time="2023-05-24T15:39:15.286999909Z" level=debug msg=event module=libcontainerd namespace=moby topic=/tasks/exit
May 24 15:39:15 devops dockerd[9801]: time="2023-05-24T15:39:15.287297582Z" level=debug msg="attach: stdout: end"
May 24 15:39:15 devops dockerd[9801]: time="2023-05-24T15:39:15.287320222Z" level=debug msg="attach: stdin: end"
May 24 15:39:15 devops dockerd[9801]: time="2023-05-24T15:39:15.287337073Z" level=debug msg="attach done"

Running Docker version 24.0.1, build 6802122

For now I've switched the base container for the debug image to be elixir 1.13, as this is a head-scratcher to me. It's clearly something w/erlang in the container, but I don't know how it'd be killing itself. Highly unusual.

@kundertk
Copy link

kundertk commented May 26, 2023

I just started having a similar issue. Would be interested in if you figured out what is going on with this latest change to the 1.14 image.

Further context in our case, images that were build using the 1.14 image 6 days ago worked perfectly and continue to do so, and the images built from the exact same source using the new 1.14 image bomb out.

Similarily, dropping back to the 1.13 image works fine.

Update: In our case using the 1.14-otp-25 version of the image fixed the issues, as we are not ready for OTP 26 yet.

I'm a little torn on major breaking changes like this pushed out under the 1.14 version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants