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

相关推荐
weixin_46688 小时前
K8S-RBAC
云原生·容器·kubernetes
处女座_三月11 小时前
kubectl 命令行更新项目版本号
docker·容器·kubernetes
Selegant12 小时前
Kubernetes + Helm + ArgoCD:打造 GitOps 驱动的 Java 应用交付流水线
java·kubernetes·argocd
Jewel Q12 小时前
QEMU、KVM、Docker、K8s(Kubernetes)
docker·容器·kubernetes
wuxingge15 小时前
k8s部署xxl-job
容器·kubernetes
Wang's Blog18 小时前
RabbitMQ: 解析Kubernetes原理与高可用集群部署实践
分布式·kubernetes·rabbitmq
山沐与山18 小时前
【K8S】Kubernetes架构与原理详解
容器·架构·kubernetes
小陈运维19 小时前
升级二进制kubernetes集群(小版本升级)
kubernetes
小陈运维19 小时前
二进制安装Kubernetes(k8s)v1.35.0
kubernetes
Destiny_where19 小时前
k8s常用指令集合
linux·docker·kubernetes