部署服务dockerfile失败小记

首先是碰到在ENTRYPOINT 中添加参数问题,一时懵逼直接添加到最后

ENTRYPOINT "java","-jar","xx-xx.jar","--spring.profiles.active=${envType}","--add-opens java.base/java.lang=ALL-UNNAMED","--add-opens java.base/java.util=ALL-UNNAMED", "--add-opens java.base/java.nio=ALL-UNNAMED", "--add-opens java.base/sun.nio.ch=ALL-UNNAMED","new parameter"

导致格式错误,修正过后 根据gpt给的数据再调整了下格式:

ENTRYPOINT ["java",

"-new parameter"

"--add-opens", "java.base/java.lang=ALL-UNNAMED",

"--add-opens", "java.base/java.util=ALL-UNNAMED",

"--add-opens", "java.base/java.nio=ALL-UNNAMED",

"--add-opens", "java.base/sun.nio.ch=ALL-UNNAMED",

"-jar",

"xx-xx.jar",

"--spring.profiles.active=${envType}"]

然后就一直报错Error response from daemon: dockerfile parse error on line 23: unknown instruction: "-new parameter

当时一直没明白,直到搜到:

确保 Dockerfile 的文件编码是 UTF-8,且使用 Unix 风格的换行符(LF)。如果换行符是 Windows 风格(CRLF),可以在 IntelliJ IDEA 中右下角的状态栏更改。

那么可以确定是格式问题,idea修改不能提交git,那就改回原本的格式在编译就ok了

然后还有一个值得注意的事:

在idea上或启动命令行是-D的参数,在dockerfile得是--D

相关推荐
谢亮_vipxieliang10 小时前
Kubernetes 的“操作系统化”:从容器编排到 AI 基础设施控制平面
人工智能·平面·kubernetes
sbjdhjd12 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
热爱Liunx的丘丘人13 小时前
1、什么是K8s
云原生·容器·kubernetes
小匠石钧知20 小时前
07_在k8s集群中安装ingress-nginx
nginx·容器·kubernetes·ingress
谢亮_vipxieliang1 天前
Kubernetes 1.36 深度解读:从 kubelet 安全到 GPU 原生调度的 70 项改进
安全·kubernetes·kubelet
wzq11_6662 天前
kubernetes集群——灰度发布
云原生·容器·kubernetes
vipxieliang2 天前
Kubernetes 的“操作系统化”:从容器编排到 AI 基础设施控制平面
kubernetes
Zhu7582 天前
在k8s环境中,离线部署与使用Topograph
云原生·容器·kubernetes
ToddyBear2 天前
从 Pod 编排到数据互联:基于 K8s 与 Snowflake 打造下一代异构查询桥梁实践
云原生·容器·kubernetes
A-刘晨阳2 天前
GitLab + ArgoCD 实现 Kubernetes GitOps 自动化部署
运维·人工智能·git·kubernetes·自动化·云计算·argocd