【发布时间】:2022-01-10 10:23:35
【问题描述】:
客户端错误:错误请求(“b'OCI运行时创建失败:container_linux.go:380:启动容器进程导致:exec:“/usr/lib/jvm/java-8-openjdk-amd64/bin/java” : stat /usr/lib/jvm/java-8-openjdk-amd64/bin/java: 没有这样的文件或目录: 未知'")
这是我的错误,当我使用 docker-compose 和 docker 时,我无法解决这个问题 我的版本
Client: Docker Engine - Community
Version: 19.03.12
API version: 1.40
Go version: go1.13.10
Git commit: 48a66213fe
Built: Mon Jun 22 15:45:44 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.12
API version: 1.40 (minimum version 1.12)
Go version: go1.13.10
Git commit: 48a66213fe
Built: Mon Jun 22 15:44:15 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.12
GitCommit: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
runc:
Version: 1.0.2
GitCommit: v1.0.2-0-g52b36a2
docker-init:
Version: 0.18.0
GitCommit: fec3683
docker compose version
docker-compose version 1.25.0, build unknown
docker-py version: 4.1.0
CPython version: 3.8.10
OpenSSL version: OpenSSL 1.1.1f 31 Mar 2020
Dockerfile
FROM openjdk:8-jdk
# Install maven
RUN apt-get update
RUN apt-get install -y maven
WORKDIR /code
# Prepare by downloading dependencies
ADD pom.xml /code/pom.xml
RUN ["mvn", "dependency:resolve", "-U"]
RUN ["mvn", "verify"]
# Adding source, compile and package into a fat jar
ADD src /code/src
RUN ["mvn", "package", "-DskipTest=True", "-Dmaven.javadoc.skip=true", "-Dmaven.test.skip=true", "--offline"]
EXPOSE 4458
# CMD ["ls", "-la", "target/"]
ENTRYPOINT ["/usr/lib/jvm/java-8-openjdk-amd64/bin/java", "-jar", "target/pbft-jar-with-dependencies.jar"]
docker-compose.yml
version: '2'
services:
node_java:
extends:
file: docker-compose.node-java.yml
service: node
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
NODE_DEBUG: "False"
docker-compose.node-java.yml
version: '2'
services:
node:
build: .
environment:
NODE_PORT: 4458
command: ["-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"]
# restart: "unless-stopped"
# stdin_open: true
node-pi:
build:
context: .
dockerfile: ARM.Dockerfile
environment:
NODE_PORT: 4458
任何建议都会有所帮助!!!
非常感谢
【问题讨论】:
-
我认为它抱怨缺少 OpenJDK 8。您可能需要在容器中安装 OpenJDK:
/usr/lib/jvm/java-8-openjdk-amd64/bin/java -
也许您要克隆的映像在安装 OpenJDK 时存在问题?或者,JDK 的路径可能与您在入口点中使用的路径不同:
/usr/lib/jvm/java-8-openjdk-amd64/bin/java。运行纯图像openjdk:8-jdk并找出java 在哪里:ls /usr/lib/jvm
标签: java docker maven docker-compose dockerfile