==================================================================================
部署過程:
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作為支持。
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
docker run --name redis4SXD -p 6379:6379 -d --restart=always redis:4.0.8 redis-server --appendonly yes --requirepass "398023"
4.為springcloud項目創建目錄,並為各個服務創建目錄
創建各個module的子級目錄
5.為每個需要獨立運行的微服務增加application-pro.properties配置文件
增加的application-pro.properties配置文件是用於在生產環境使用的配置,詳細內容查看GitHub
6.打包spring cloud項目,獲取到各個微服務的可運行jar包
隨后拷出均以服務器上各個服務目錄重命名jar包
並依次上傳至服務器上不同對應的目錄中【上傳命令使用rz】
7.逐個完善各個目錄下的Dockerfile文件
各個目錄下的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文件內容