Open 3goats opened 2 months ago
Sorry, I realised I should have provided more information here. I downloaded the pre-built binaries to my ARM64 platform and that works fine. Ideally, I need this to be containerised to work alongside some other container apps. I also tried building my own container using the working binaries but that didn't work either. It seems that docker-entrypoint.sh
script is doing some magic, that I haven't quite worked out yet.
I'm trying to build the container on my ARM64 platform using the arm64v8/alpine
image. I then edited the Dockerfile to use your rqlite-v8.23.1-linux-arm64.tar.gz binary instead of the rqlite-v8.23.1-linux-amd64-musl.tar.gz
Are there any plans to provide arm imaged to the docker rep's ?
Some file is missing from inside your container -- is rqlited
present with the executable flag set?
Yes - I did try adding this to my Docker file.
RUN chmod +x /bin/rqlited
RUN chmod +x /bin/rqlite
Didn't make any difference though.
Docker build looks good too.
docker build --pull -t rqlite/rqlite:$VERSION .
[+] Building 0.7s (9/9) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 725B 0.0s
=> [internal] load metadata for docker.io/library/alpine:latest 0.4s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [1/4] FROM docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 42B 0.0s
=> CACHED [2/4] RUN apk update && apk --no-cache add curl tar && curl -L https://github.com/rqlite/rqlite/releases/download/v8.23.1/rqlite-v8.23.1-linux-arm64.tar.gz -o rqlite-v8.23.1-linux-arm64.tar.gz && tar xvfz rqlite 0.0s
=> CACHED [3/4] RUN mkdir -p /rqlite/file 0.0s
=> CACHED [4/4] COPY docker-entrypoint.sh /bin/docker-entrypoint.sh 0.0s
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:7eb9a9b06f7e620aca75139cb84b85051546e94c4c4652e9e5c73da3538cecec 0.0s
=> => naming to docker.io/rqlite/rqlite:1.2.3
and with chmod
[+] Building 3.8s (11/11) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 776B 0.0s
=> [internal] load metadata for docker.io/library/alpine:latest 0.4s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [1/6] FROM docker.io/library/alpine:latest@sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 42B 0.0s
=> CACHED [2/6] RUN apk update && apk --no-cache add curl tar && curl -L https://github.com/rqlite/rqlite/releases/download/v8.23.1/rqlite-v8.23.1-linux-arm64.tar.gz -o rqlite-v8.23.1-linux-arm64.tar.gz && tar xvfz rqlite 0.0s
=> CACHED [3/6] RUN mkdir -p /rqlite/file 0.0s
=> [4/6] RUN chmod +x /bin/rqlited 0.8s
=> [5/6] RUN chmod +x /bin/rqlite 0.9s
=> [6/6] COPY docker-entrypoint.sh /bin/docker-entrypoint.sh 0.1s
=> exporting to image 1.3s
=> => exporting layers 1.2s
=> => writing image sha256:b27b69ca259ae282d5d842d31c005d3380bf67d494544510dd824b1d7eb40515 0.0s
=> => naming to docker.io/rqlite/rqlite:1.2.3
Not sure, maybe there is some library rqlited is relying on, which is missing from your container. I think that also results in a "not found" error.
Do you have ldd
in the image? This is what I see when I download the amd64 image, for example:
~/r $ curl -L https://github.com/rqlite/rqlite/releases/download/v8.23.1/rqlite-v8.23.1-linux-amd64.tar.gz -o rqlite-v8.23.1-linux-amd64.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 13.8M 100 13.8M 0 0 8471k 0 0:00:01 0:00:01 --:--:-- 11.8M
~/r $ tar xvfz rqlite-v8.23.1-linux-amd64.tar.gz
rqlite-v8.23.1-linux-amd64/
rqlite-v8.23.1-linux-amd64/rqlite
rqlite-v8.23.1-linux-amd64/rqlited
rqlite-v8.23.1-linux-amd64/rqbench
~/r $ cd rqlite-v8.23.1-linux-amd64
~/r/rqlite-v8.23.1-linux-amd64 $ ldd rqlited
not a dynamic executable
~/r/rqlite-v8.23.1-linux-amd64 $
Hi, I'm using your latest
Dockerfile
and thedocker-entrypoint.sh
file, however I getting the following error when I then try to run the container.I need to manually build since you don' currently provide a linux-arm image.
I tested this on OSX too and got the same error.