java - Docker - 尝试构建映像时“无法在此平台上使用映像操作系统“linux””
问题描述
我正在关注此链接以使用 Spring Boot 项目 https://dzone.com/articles/deploying-spring-boot-on-docker创建 docker 映像
已经切换到 Windows 容器
操作系统:Windows 10 专业版
码头工人版本:2.1.0.1
引擎:19.03.1
当我尝试构建图像时,我收到了这个错误:
A:\Projects\Docker\dockerDemo>docker build -f DockerFile -t dockerdemo .
Sending build context to Docker daemon 99.84kB
Step 1/4 : FROM java:8
8: Pulling from library/java
image operating system "linux" cannot be used on this platform
DockerFile
FROM java:8
EXPOSE 8080
ADD /target/dockerdemo.jar dockerdemo.jar
ENTRYPOINT ["java", "-jar", "dockerdemo.jar"]
提前致谢 !!!
解决方案
而不是“java”,你需要“openjdk”
https://hub.docker.com/_/openjdk
这将是您的 Dockerfile:
FROM openjdk:[some_tag]
EXPOSE 8080
ADD /target/dockerdemo.jar dockerdemo.jar
ENTRYPOINT ["java", "-jar", "dockerdemo.jar"]
这是我通过 java 查询发现的:
推荐阅读
- node.js - express js请求问题,为一个查询键传递多个值/集合
- android - TCP 是否支持在 IP 更改时保持连接的选项?
- postgresql - 如何在postgres中查询timestamptz并与time.Time进行比较?
- excel - 我的代码遇到运行时错误 9“下标超出范围”
- logstash - 如何在 Logstash 中为 Elasticsearch 服务过滤 AWS Lambda 和 API Gateway 日志?
- node.js - 使用 jwt 调用 google api 以对原始端点进行服务到服务调用的工作节点示例?
- node.js - 在客户端的静态和动态页面之间移动时保持快速会话
- android - 聊天正常,但做了一些奇怪的事情
- laravel - 仅当 laravel 的 user_details 表中不存在其详细信息时,如何显示用户表中的所有数据?
- full-text-search - Powerapps 中是否有一个选项可以将搜索文本拆分为单个字符串并在图库中仅显示包含“所有”字符串的项目?