部署服务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

相关推荐
fengkai45454 小时前
3、Kubernetes的Namespace&Contexts&Pod&YAML格式
运维·容器·kubernetes·k8s·namespace·yaml·pod
SatanII5 小时前
K8s 存储与配置管理|Volume、ConfigMap、Secret 核心笔记
笔记·rpc·kubernetes
小马同学-6 小时前
K8s 命名空间与上下文:Namespace 资源隔离与多集群切换实战
云原生·容器·kubernetes
川石课堂软件测试7 小时前
涨薪技术|0到1学会性能测试第9课-HTTP响应统计
数据库·功能测试·网络协议·http·kubernetes·单元测试·测试用例
探索云原生8 小时前
Ascend vNPU 实战:从原生 Docker 到 Ascend Docker Runtime
linux·ai·云原生·kubernetes·gpu
许知珩8 小时前
Kubernetes 存储与配置管理 ——Volume、ConfigMap 与 Secret 实战详解
云原生·容器·kubernetes
你看我名字11 小时前
LAMP 架构演练:从云主机准备到 Apache、PHP、MySQL 上线验证
运维·ci/cd·架构·kubernetes·jenkins
丨晨 丨12 小时前
K8s存储卷与配置管理实战
云原生·容器·kubernetes
暖核13 小时前
K8s 存储与配置:Volume PV‑PVC ConfigMap Secret 实战解析
云原生·容器·kubernetes
jonyleek1 天前
JVS数字底座私有化部署实践:Spring Cloud + K8S 实现文档平台开箱即用
elasticsearch·kubernetes·私有化部署·springcloud·minio·jvs企业文档·文档治理