|
|
|
@ -19,24 +19,61 @@ docker container prune
|
|
|
|
|
# 删除所有容器
|
|
|
|
|
docker rm -f $(docker ps -a -q)
|
|
|
|
|
|
|
|
|
|
# 打包
|
|
|
|
|
docker build -t ms-admin .
|
|
|
|
|
|
|
|
|
|
# 运行容器【使用宿主机的hosts文件】
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 进入容器
|
|
|
|
|
docker exec -it 58bb2dce0a92 /bin/bash
|
|
|
|
|
|
|
|
|
|
# 安装JDK1.8
|
|
|
|
|
yum -y install java-1.8.0-openjdk.x86_64
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
排查步骤:
|
|
|
|
|
1、在IDEA中运行正常
|
|
|
|
|
2、打包成jar,在windows中启动正常
|
|
|
|
|
# WINDOWS环境下运行jar包
|
|
|
|
|
"C:\Program Files\Java\jdk1.8.0_271\bin\java" -jar ms-admin.jar
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3、将jar拷贝到Linux中,启动正常
|
|
|
|
|
# 安装JDK1.8
|
|
|
|
|
yum -y install java-1.8.0-openjdk.x86_64
|
|
|
|
|
|
|
|
|
|
# Linux环境下运行jar包
|
|
|
|
|
java -jar ms-admin.jar
|
|
|
|
|
|
|
|
|
|
4、至此,说明jar本身没有问题,否则Linux环境一样会报错,那么只有一种可能:Dockerfile有问题!
|
|
|
|
|
经仔细检查,发现 -Dspring.profiles.active=test 配置错误,指定了test文件,应该是Dev配置文件才对!
|
|
|
|
|
|
|
|
|
|
#sed 替换
|
|
|
|
|
sed -i 's/-Dspring.profiles.active=test/-Dspring.profiles.active=dev/g' Dockerfile
|
|
|
|
|
|
|
|
|
|
然后重新打包镜像:
|
|
|
|
|
|
|
|
|
|
# 打包
|
|
|
|
|
docker build -t ms-admin .
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5、但事情还没有完!因为SpringBoot的配置中,有我使用hosts配置的DNS解析,比如:ms-excel 10.10.21.20
|
|
|
|
|
在Linux宿主机中,我们可以采用 /etc/hosts 的编辑方式创建 ms-excel 10.10.14.77
|
|
|
|
|
但这个配置信息不是直接在Docker容器中传递过去,需要加上启动时的参数:
|
|
|
|
|
|
|
|
|
|
# 运行容器【使用宿主机的hosts文件】
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
docker run -d --name ms-admin -p 7011:7011 -v /etc/hosts:/etc/hosts ms-admin
|
|
|
|
|
|
|
|
|
|