在尝试执行docker-compose up
命令时,是否有人遇到过此错误?
我已经尝试通过查看其他涉及类似问题的文章来解决它,但我没有成功。
我正在尝试使用docker-compose文件运行我的spring boot应用程序,但我一直收到这个错误:
qemu-x86_64: Could not open '/lib/ld-musl-x86_64.so.1': No such file or directory
我尝试根据网上阅读的建议进行修复,但是没有任何效果。
我已经尝试过:
在阅读了这篇帖子之后:https://github.com/nodejs/help/issues/3239 添加了以下内容:
platform: linux/amd64
我尝试将其添加到我的docker-compose文件中,但没有任何区别
并尝试在我的Dockerfile前面添加FROM --platform=linux/amd64
当我读到这个时,我也尝试安装musl
,但无法执行make
命令
curl https://musl.libc.org/releases/musl-1.2.2.tar.gz -o musl-1.2.2.tar.gz
tar -xvf musl-1.2.2.tar.gz
cd musl-1.2.2
./configure
make
make install
我的 Docker 文件长这样
FROM azul/zulu-openjdk-alpine:11 as packager
RUN { \
java --version ; \
echo "jlink version:" && \
jlink --version ; \
}
ENV JAVA_MINIMAL=/opt/jre
# build modules distribution
RUN jlink \
--verbose \
--add-modules \
java.base,java.sql,java.naming,java.desktop,java.management,java.security.jgss,java.instrument \
# java.naming - javax/naming/NamingException
# java.desktop - java/beans/PropertyEditorSupport
# java.management - javax/management/MBeanServer
# java.security.jgss - org/ietf/jgss/GSSException
# java.instrument - java/lang/instrument/IllegalClassFormatException
--compress 2 \
--strip-debug \
--no-header-files \
--no-man-pages \
--output "$JAVA_MINIMAL"
# Second stage, add only our minimal "JRE" distr and our app
FROM alpine
ENV JAVA_MINIMAL=/opt/jre
ENV PATH="$PATH:$JAVA_MINIMAL/bin"
COPY --from=packager "$JAVA_MINIMAL" "$JAVA_MINIMAL"
COPY "build/libs/company-coordinator-app-0.0.1-SNAPSHOT.jar" "/company-coordinator-app.jar"
EXPOSE 8080
CMD [ "-jar", "/company-coordinator-app.jar" ]
ENTRYPOINT [ "java" ]
我的docker-compose.yml文件如下所示
version: '2'
services:
company-coordinator-app:
container_name: 'company-coordinator-app'
build:
context: /Users/ciaran/cmkdev/company-coordinator-project/company-coordinator-app
dockerfile: Dockerfile
image: springio/gs-spring-boot-docker
ports:
- "8080:8080"
我正在使用M1 mbp运行此程序。
我在阅读这篇帖子时,试图正确构建我的Dockerfile,因为我需要使用Java 11。
如果有人有任何见解,在此表示感谢。