​

==================================================================================

部署过程:


1.首先修改centOS的hosts文件


vi /etc/hosts


增加以下内容


127.0.0.1  centos7 192.168.92.130 centos7




2.修改本机hosts文件


路径如下:


C:\Windows\System32\drivers\etc\hosts


增加如下内容:


192.168.92.130  centos7


这样,启动在服务器上的服务,也就是192.168.92.130服务器上的服务就可以通过http://centos7:port/ 来进行访问了。


3.为服务需要的基础环境作准备

本组spring cloud服务需要redis和mysql作为支持。

​启动mysql在服务器上​​:


docker run -p 3306:3306 --name mysql  --restart=always -e MYSQL_ROOT_PASSWORD=root  -v /etc/localtime:/etc/localtime:ro  -v /etc/timezone:/etc/timezone:ro  -d mysql:5.7


​启动redis在服务器上​​:


docker run --name redis4SXD -p 6379:6379 -d --restart=always redis:4.0.8 redis-server --appendonly yes --requirepass "398023"



【spring cloud】【docker】使用docker在centOS上部署spring cloud微服务架构服务_docker


4.为springcloud项目创建目录,并为各个服务创建目录

【spring cloud】【docker】使用docker在centOS上部署spring cloud微服务架构服务_服务器_02

创建各个module的子级目录

【spring cloud】【docker】使用docker在centOS上部署spring cloud微服务架构服务_服务器_03


5.为每个需要独立运行的微服务增加application-pro.properties配置文件

增加的application-pro.properties配置文件是用于在生产环境使用的配置,详细内容查看​​GitHub​

【spring cloud】【docker】使用docker在centOS上部署spring cloud微服务架构服务_centos_04



6.打包spring cloud项目,获取到各个微服务的可运行jar包

​打包教程和注意事项​

【spring cloud】【docker】使用docker在centOS上部署spring cloud微服务架构服务_docker_05

随后拷出均以服务器上各个服务目录重命名jar包

【spring cloud】【docker】使用docker在centOS上部署spring cloud微服务架构服务_jar_06


并依次上传至服务器上不同对应的目录中【上传命令使用rz】



7.逐个完善各个目录下的Dockerfile文件

​docker部署spring boot服务​

各个目录下的Dockerfile,用于和jar包组合构建微服务的docker镜像使用。

使用命令


vi Dockerfile


填充文件内容如下:


FROM java:8 ADD ms-eureka.jar ms-eureka.jar RUN bash -c 'touch /ms-eureka.jar'  ENV SPRING-CLOUD-MS-NAME ms-eureka ENV SPRING-CLOUD-HOSTNAME centos7 ENV TX-MANAGER-URL http://centos7:7000/tx/manager/  ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","-Xmx1024m","-Xms1024m","/ms-eureka.jar"]


各个服务的Dockerfile文件内容,在GItHub上,各个服务的resource目录下的Dockerfile中可以查看



8.分别使用命令构建镜像,启动docker容器



构建镜像 docker build -t ms-eureka .


启动docker容器 docker run --name ms-eureka -itd --net=host -m 2g \ -v /apps/springcloud/ms-eureka/paking_data:/paking_data \ -v /etc/localtime:/etc/localtime:ro \ -v /etc/timezone:/etc/timezone:ro \ ms-eureka --spring.profiles.active=pro


完整启动命令参考GitHub上,各个服务resource下的docker-order文件内容