1.修改java项目配置文件
将自己的springBoot项目的配置文件中的mysql连接地址与redis连接地址改成服务器IP的地址,因为容器内部相互隔离(这个可以解决)。
2.项目打包成jar包,上传到Linux服务器上
在服务器上新建文件夹,我在/root/下面新建/dockerTest/文件夹
将 jar 包上传到/root/dockerTest/文件夹下
并在这个文件夹上新建新的文件 Dockerfile
修改文件内容为以下内容
修改端口号为自己项目的端口号
#基础镜像通过java8来的 FROM java:8 #将当前文件中所有*.jar 拷贝到项目的app.jar中(这个app.jar是自己生成的) COPY *.jar /app.jar #映射地址 CMD ["--server.prot=8991"] #暴露端口 EXPOSE 8991 #执行命令java -jar ENTRYPOINT ["java","-jar","/app.jar"]
3.在/root/dockerTest/文件夹下执行生成镜像命令
后面的.号千万不能忘记
nms_docker 是自己起的镜像名称
docker镜像是层级下载的
可以自己声明[tag]版本号
docker build -t nms_docker:1.0 .
4.运行docker镜像
docker images 发现已经生成镜像了
现在可以运行这个镜像了
docker run -d --restart always -p 8991:8991 -v /usr/local/nms/:/usr/local/nms/ --name nms-service nms_docker:1.0 # --restart always 自启动 # -p 宿主机端口号:容器内端口号 # -v 映射目录 宿主机目录:容器内目录 # --name 服务容器名称
运行成功后,使用docker ps -a查看正在运行的容器
可以通过 docker logs 容器ID 查看启动日志,可以看到,我这边项目启动成功了
项目访问成功(nginx + mysql + redis 都是docker启动的) 可以看我其他博客:
mysql 部署:https://blog.csdn.net/weixin_43484014/article/details/114384964
docker 部署:https://blog.csdn.net/weixin_43484014/article/details/119957836
nginx 部署:https://blog.csdn.net/weixin_43484014/article/details/121137537



