I packaged the image using GitHub and exited directly when starting it. There was no daemon, so I searched for many problems but couldn’t solve them. Docker reported an error specifically:
/Opt/eadm/bin/eam: line 272:/opt/eam/arts 14.2.2/bin/erlexec: not found
I went inside Docker to check if the file did exist
Docker run -- rm - it -- name eadm redgreat/eam ls - l/opt/eam/erts 14.2.2/bin/erlexec
-Rwxr-xr-x 1 root 169680 Apr 19 13:27/opt/eam/arts 14.2.2/bin/erlexec
But when it’s being executed, it can’t be found
Docker run -- rm - it -- name eadm redgreat/eam/opt/eam/arts 14.2.2/bin/erlexec help
Exec/opt/eam/arts 14.2.2/bin/erlexec: no such file or directory
Can the big shots help me find the problem?
Github build statement
-Name: compile
Run:|
Rebar3 clean
Rebar3 as prod release
Tar - czvf eadm - ${{steps. rep. outputs. label_version}}. tar. gz _build/prod/rel/eam
Dockerfile
WORKDIR/opt/eam
RUN apk add -- no cache ncurses libs libgcc libstdc++
COPY_build/prod/rel/eam/opt/eam/
VOLUME/opt/eam
ENV\
Disable-IPV6=1\
TZ='Asia/Shanghai'\
LANG='zh_cN. UTF-8 '
EXPOSE 8090
CMD ["/opt/eam/bin/eam", "foreground"]
Rebar3. config
%%Release profiles
%%To create a release just run
%%Rebar3 as prod release
Relx, [{release, {eadm, "0.1.0"},
[eadm, nova, sasl]},
{mode, minimum},
{extended_start_script, true},
{sys_config, "config/sys. config"},
{vm.args, "config/vm. args"},
{overlay, [{copy, "config/prod_db. config", "releases/0.1.0/prod_db. config"]}
]}
{profiles, [{prod, [{relx[
{mode, prod},
{extended_start_script, true},
{sys_config_src, "config/prod_sys. config. src"},
{vm-args src, "config/vm. args. src"}
]}
]}
]}
{shell[
{config, "config/dev_sys. config. src"},
{apps, [eadm]}
]}
Ensure that all configuration files can be successfully mapped
The problem may occur in rebar3. config
{mode, prod},
{extended_start_script, true},
This place, but I don’t know how to solve it. I hope everyone can help me take a look