Docker 启动镜像报错 Could not resolve placeholder
本地启动 SpringBoot 项目是正常的,执行 maven package
命令打包之后,使用 docker build -f Dockerfile -t test .
构建镜像,使用 docker run --name test -itd -p 8080:8080 test -e env=dev
指定 dev 环境启动镜像就报错 Could not resolve placeholder。
后来发现 -e
命令指定环境变量必须紧挨着 docker run
之后,不然不生效,猜测是因为镜像已经启动了,再指定环境变量就晚了。
正确的启动镜像并指定环境变量的命令为 docker run -e env=dev --name test -itd -p 8080:8080 test
。