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

相关推荐
kuroomi13 小时前
Git入门
git·kubernetes
我是koten1 天前
【运维杂谈】K8s遇到Terminating的名称空间删除不了怎么办?(解决方案亲测有效)
linux·运维·服务器·云原生·kubernetes·k8s·名称空间
RuoyiOffice1 天前
KubeSphere 容器云实践:从管理 K8s 到建设企业 PaaS,还需要哪些能力
spring boot·kubernetes·kubesphere·jenkins·paas·微服务部署·ruoyi office
风吹稻子1 天前
etcd备份与恢复:删了 etcd.yaml,容器为什么还在跑?——一次 K8s 控制面死锁排查实录
kubernetes
weirong1 天前
Operator 的测试该写到哪一层?139 个用例之后我划的三条线
kubernetes
逐流人2 天前
手工建集群到全自动发布:k8s集群部署与DevOps流水线整合实战
ci/cd·云原生·kubernetes·云计算·devops
我不会起名字3222 天前
K8s Pod 反复重启 CrashLoopBackOff:从 exit code 到根因的 5 步排查
云原生·容器·kubernetes·k8s
我不会起名字3222 天前
K8s 节点磁盘打满导致 Pod 被驱逐:4 类占用与回收顺序
运维·kubernetes·k8s·diskpressure·evicted
wzq11_6663 天前
Kubernetes集群——存储管理
云原生·容器·kubernetes
闲云自留地4 天前
K8s 的记忆大脑!ETCD 集群部署、etcdctl 命令与备份恢复全通关
容器·kubernetes·etcd