As my Docker container starts up, I need to run this line:
cp /lib/libc.musl-x86_64.so.1 /lib/ld-linux-x86-64.so.2
Both of these files only exist in the Docker container after some packages have been installed.
In the Dockerfile, I have tried:
RUN cp /lib/libc.musl-x86_64.so.1 /lib/ld-linux-x86-64.so.2
COPY /lib/libc.musl-x86_64.so.1 /lib/ld-linux-x86-64.so.2
ENTRYPOINT ["cp","/lib/libc.musl-x86_64.so.1 /lib/ld-linux-x86-64.so.2"]
And also created a bash script that contains (among other things) this line. I know the script has run as the other changes it makes are present, but the file is not copied.
#!/bin/sh
apk add build-base
apk add libc6-compat
cp /lib/libc.musl-x86_64.so.1 /lib/ld-linux-x86-64.so.2
Then run with
RUN ./my_bash_script.sh
However, when I use the command line in the Docker container, and run the line manually, it works.
Why are the Dockerfile commands not copying this file?
Edit: My complete Dockerfile
FROM golang:alpine
ENV APP_NAME hello-world
ADD env_setup.sh .
RUN chmod +x env_setup.sh
RUN ./env_setup.sh
WORKDIR /home/helloworld
ADD vendor/ ./vendor/
COPY main.go .
COPY go.mod .