[error]Error 2000: Problem connecting to app instance --> v0 failed - Failed due to unhealthy allocations

Hi, I am getting this error when deploying, this is from a known working config/Dockerfile that has not changed from 2 days ago when it was working. Now I get this error:

2022-06-15T15:28:21Z   [info]=ERROR REPORT==== 15-Jun-2022::15:28:21.970954 ===
2022-06-15T15:28:21Z   [info]Unable to load crypto library. Failed with error:
2022-06-15T15:28:21Z   [info]"load_failed, Failed to load NIF library /opt/pleroma/lib/crypto-4.6.5.4/priv/lib/crypto: 'libcrypto.so.1.1: cannot open shared object file: No such file or directory'"
2022-06-15T15:28:21Z   [info]OpenSSL might not be installed on this system.
2022-06-15T15:28:21Z   [info]=WARNING REPORT==== 15-Jun-2022::15:28:21.971729 ===
2022-06-15T15:28:21Z   [info]The on_load function for module crypto returned:
2022-06-15T15:28:21Z   [info]{error,{load_failed,"Failed to load NIF library /opt/pleroma/lib/crypto-4.6.5.4/priv/lib/crypto: 'libcrypto.so.1.1: cannot open shared object file: No such file or directory'"}}
2022-06-15T15:28:21Z   [info]{"init terminating in do_boot",{undef,[{crypto,strong_rand_bytes,"@",[]},{erl_eval,do_apply,6,[{file,"erl_eval.erl"},{line,680}]},{erl_eval,expr_list,6,[{file,"erl_eval.erl"},{line,888}]},{erl_eval,expr,5,[{file,"erl_eval.erl"},{line,411}]},{erl_eval,expr_list,6,[{file,"erl_eval.erl"},{line,888}]},{erl_eval,expr,5,[{file,"erl_eval.erl"},{line,411}]},{erl_eval,expr,5,[{file,"erl_eval.erl"},{line,449}]},{erl_eval,exprs,5,[{file,"erl_eval.erl"},{line,126}]}]}}

I have checked and can confirm that OpenSSL is installed in the deployed instance via SSH. I am not sure what changed between now and a couple days ago when it last worked.

Any help apreciated,
Thanks

Nothing changed since?

Can you show us our Dockerfile?

If you SSH in, can you find libcrypto.so.1.1 anywhere? Should be in /usr/lib/x86_64-linux-gnu or /lib/x86_64-linux-gnu.

For sure, here is the Dockerfile:

FROM debian:bookworm-slim

ENV SOAPBOX_FE_VERSION=v2.0.0

RUN apt-get update && \
    DEBIAN_FRONTENT=noninteractive apt-get -y full-upgrade && \
    DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y postgresql pos>
    apt-get clean && \
    sed -ie "s/data_directory =.*/data_directory = '\/data\/postgres'/" /etc/postgresql/14/m>

RUN adduser --system --home=/data/pleroma --group pleroma && \
    mkdir /opt/pleroma && \
    curl -L -o /tmp/pleroma.zip "https://git.pleroma.social/api/v4/projects/2/jobs/artifacts>
    unzip -q /tmp/pleroma.zip -d /tmp/ && \
    cd /tmp/release && \
    mv * /opt/pleroma/

RUN mkdir -p /opt/pleroma/dist && \
    curl -L -o /opt/pleroma/dist/soapbox-fe.zip "https://gitlab.com/soapbox-pub/soapbox-fe/->

ADD entrypoint.sh /bin/entrypoint.sh
ADD start_pleroma.sh /bin/start_pleroma.sh
ADD supervisord.conf /etc/supervisord.conf
ADD config.exs /etc/pleroma/config.exs
RUN chmod 770 /bin/entrypoint.sh /bin/start_pleroma.sh
ENTRYPOINT ["/bin/entrypoint.sh"]

RUN chown -R pleroma:pleroma /opt/pleroma /etc/pleroma /bin/start_pleroma.sh && \
    ln -fs /data/pleroma /opt/pleroma/instance

In /usr/lib/ x86_64-linux-gnu/ it has libcrypto.so.3
In /lib/ x86_64-linux-gnu it has libcrypto.so.1.1.0

Perhaps the added zero in the version is affecting it if it isn’t expecting it?

You could try

ln -s /lib/x86_64-linux-gnu/libcrypto.so.1.1.0 /lib/x86_64-linux-gnu/libcrypto.so.1.1

This shouldn’t have changed between deploys unless the base image changed or something like that.

The resulting rootfs when we extract it from the Docker image should always be the same for the same image.

As far as I can tell, you only deployed it once on us.

Thanks, I will give that a try, and I have been messing around a lot in the last two days and have destroyed several apps already, it wasn’t until sometime yesterday evening that this error started appearing, so I was wondering if it wasn’t an issue in the image being pulled as I did not touch the Dockerfile. I will be the first to admit that I break things when I mess around, but I returned to a known working setup and this still existed.