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

Issue with Docker Build on MACOS #146

Open
abhishek0909 opened this issue Jul 9, 2023 · 3 comments
Open

Issue with Docker Build on MACOS #146

abhishek0909 opened this issue Jul 9, 2023 · 3 comments

Comments

@abhishek0909
Copy link

Docker build is erroring out with the following error:

" **_****> [builder 3/3] RUN ./build.sh:
#0 0.099 /juno
#0 0.102 qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory

Dockerfile:35

33 | COPY /build.sh /build.sh
34 |
35 | >>> RUN ./build.sh
36 |
37 |

ERROR: failed to solve: process "/bin/sh -c ./build.sh" did not complete successfully: exit code: 255"
make: *** [build] Error 1****_**

Please suggest any resolution. Docker version is 24.0.2.

Thanks
Abhishek Mittal

Detailed log below

cd /Users/I589015/go-dev-juno/junodb/docker/build/src/juno; echo git rev-parse --short=8 HEAD 2> /dev/null >> /Users/I589015/go-dev-juno/junodb/docker/build/src/juno/git_revision.txt ;
if [ -f /Users/I589015/go-dev-juno/junodb/docker/build/src/juno/third_party/apply_patch.sh ]; then /Users/I589015/go-dev-juno/junodb/docker/build/src/juno/third_party/apply_patch.sh ; fi ;
Cloning into 'rocksdb'...
remote: Enumerating objects: 122556, done.
remote: Counting objects: 100% (607/607), done.
remote: Compressing objects: 100% (400/400), done.
remote: Total 122556 (delta 292), reused 376 (delta 172), pack-reused 121949
Receiving objects: 100% (122556/122556), 201.69 MiB | 300.00 KiB/s, done.
Resolving deltas: 100% (93758/93758), done.
Note: switching to '72cf57d4b40e5c809839afc1c62dc13e533b8ec6'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

git switch -c

Or undo this operation with:

git switch -

Turn off this advice by setting config variable advice.detachedHead to false

Cloning into 'forked/tecbot/gorocksdb'...
remote: Enumerating objects: 928, done.
remote: Total 928 (delta 0), reused 0 (delta 0), pack-reused 928
Receiving objects: 100% (928/928), 379.25 KiB | 1016.00 KiB/s, done.
Resolving deltas: 100% (573/573), done.
Note: switching to '57a309fefefb9c03d6dcc11a0e5705fc4711b46d'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

git switch -c

Or undo this operation with:

git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 57a309f Merge pull request #106 from JelteF/patch-1
wget --no-check-certificate https://dl.google.com/go/go1.18.2.linux-amd64.tar.gz -O /Users/I589015/go-dev-juno/junodb/docker/build/go1.18.2.linux-amd64.tar.gz ;
--2023-07-09 19:50:22-- https://dl.google.com/go/go1.18.2.linux-amd64.tar.gz
Resolving dl.google.com (dl.google.com)... 142.250.71.14
Connecting to dl.google.com (dl.google.com)|142.250.71.14|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 141732542 (135M) [application/x-gzip]
Saving to: ‘/Users/I589015/go-dev-juno/junodb/docker/build/go1.18.2.linux-amd64.tar.gz’

/Users/I589015/go-dev-juno/junodb/docke 100%[===============================================================================>] 135.17M 11.0MB/s in 13s

2023-07-09 19:50:35 (10.8 MB/s) - ‘/Users/I589015/go-dev-juno/junodb/docker/build/go1.18.2.linux-amd64.tar.gz’ saved [141732542/141732542]

TODO --

cd build && docker build --build-arg GOLANG_VERSION=1.18.2 --tag
ghcr.io/paypal/junodb/juno-dev:latest --target juno-dev .
[+] Building 4.3s (15/15) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 858B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [internal] load metadata for docker.io/library/ubuntu:20.04 3.4s
=> [auth] library/ubuntu:pull token for registry-1.docker.io 0.0s
=> [juno-base 1/4] FROM docker.io/library/ubuntu:20.04@sha256:c9820a44b950956a790c354700c1166a7ec648bc0d215fa438d3a339812f1d01 0.0s
=> [internal] load build context 0.8s
=> => transferring context: 13.63MB 0.8s
=> CACHED [juno-base 2/4] RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -qq install -y cmake g++ make wget 0.0s
=> CACHED [juno-base 3/4] COPY /go1.18.2.linux-amd64.tar.gz / 0.0s
=> CACHED [juno-base 4/4] RUN tar xzvf go1.18.2.linux-amd64.tar.gz -C /usr/local/ 0.0s
=> CACHED [juno-dev-base 1/4] COPY /src/juno/third_party/rocksdb /vendor/src/rocksdb 0.0s
=> CACHED [juno-dev-base 2/4] WORKDIR /vendor/src/rocksdb 0.0s
=> CACHED [juno-dev-base 3/4] RUN make static_lib; make INSTALL_PATH=/vendor/rocksdb install-static 0.0s
=> CACHED [juno-dev 1/2] COPY --from=juno-dev-base /vendor/rocksdb/include /usr/local/include 0.0s
=> CACHED [juno-dev 2/2] COPY --from=juno-dev-base /vendor/rocksdb/lib /usr/local/lib 0.0s
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:3c85febcc62fd66fd243fbb12a22a1123ae9ddd88a7cb5546f68da9452891a83 0.0s
=> => naming to ghcr.io/paypal/junodb/juno-dev:latest 0.0s
cd build && docker build --build-arg GOLANG_VERSION=1.18.2 --tag
ghcr.io/paypal/junodb/juno-build:latest --target builder .
[+] Building 1.9s (16/16) FINISHED
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 858B 0.0s
=> [internal] load metadata for docker.io/library/ubuntu:20.04 0.5s
=> [juno-base 1/4] FROM docker.io/library/ubuntu:20.04@sha256:c9820a44b950956a790c354700c1166a7ec648bc0d215fa438d3a339812f1d01 0.0s
=> [internal] load build context 0.9s
=> => transferring context: 63.02MB 0.9s
=> CACHED [juno-base 2/4] RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -qq install -y cmake g++ make wget 0.0s
=> CACHED [juno-base 3/4] COPY /go1.18.2.linux-amd64.tar.gz / 0.0s
=> CACHED [juno-base 4/4] RUN tar xzvf go1.18.2.linux-amd64.tar.gz -C /usr/local/ 0.0s
=> CACHED [juno-dev-base 1/4] COPY /src/juno/third_party/rocksdb /vendor/src/rocksdb 0.0s
=> CACHED [juno-dev-base 2/4] WORKDIR /vendor/src/rocksdb 0.0s
=> CACHED [juno-dev-base 3/4] RUN make static_lib; make INSTALL_PATH=/vendor/rocksdb install-static 0.0s
=> CACHED [juno-dev 1/2] COPY --from=juno-dev-base /vendor/rocksdb/include /usr/local/include 0.0s
=> CACHED [juno-dev 2/2] COPY --from=juno-dev-base /vendor/rocksdb/lib /usr/local/lib 0.0s
=> [builder 1/3] COPY /src/juno /juno 0.3s
=> [builder 2/3] COPY /build.sh /build.sh 0.0s
=> ERROR [builder 3/3] RUN ./build.sh 0.1s

[builder 3/3] RUN ./build.sh:
#0 0.099 /juno
#0 0.102 qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory


Dockerfile:35

33 | COPY /build.sh /build.sh
34 |
35 | >>> RUN ./build.sh
36 |
37 |

ERROR: failed to solve: process "/bin/sh -c ./build.sh" did not complete successfully: exit code: 255
make: *** [build] Error 1

@amustaque97
Copy link

Hi @abhishek0909, I'm using macOS and I'm able to successfully set up and run JunoDB, I mentioned in my blog post you can check it here https://amustaque97.github.io/run-junodb-on-macos/

@iamrutvik
Copy link

Hi @abhishek0909 were you able to figure out?

@iamrutvik
Copy link

Solution to Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory

The main problem was that /lib64/ld-linux-x86-64.so.2 was not supplied with the default image and it would create problems when running it on M1 Apple chip.

I was able to fix it by adding --platform=linux/amd64 in junodb/docker/build/Dockerfile and my build was successful.

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

3 participants