莘羽科技资讯网
首页 > 科技 > Docker 部署 Spring Cloud 专案详细步骤

Docker 部署 Spring Cloud 专案详细步骤

Docker 部署 Spring Cloud 专案详细步骤

作者 boonya

连结 blog.csdn.net/u011508407

准备工作

JDK1.8、Docker1.12.1、CentOS7.0

1.CentOS7.0下JDK1.8的安装

(1)到Oracle官网下载好 jdk-8u181-linux-x64.tar.gz 备用 (2)解除安装系统自带的java

java -version

rpm -qagrep java

yum -y remove [上面查出来的东西,多个用空格分隔]

(3)安装jdk

cd /usr #进入到要安装jdk的目录

mkdir java #建立java目录,将jdk-8u181-linux-x64.tar.gz上传到此目录

tar -zxvf jdk-8u181-linux-x64.tar.gz #将jdk压缩包解压安装

(4)配置环境变数

vim /etc/profile

找到:export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 这一行,并在其下面一行新增如下内容:

export JAVA_HOME=/usr/java/jdk1.8.0_181

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

使环境变数生效

source /etc/profile

测试安装

java -version

2.Docker的安装

(1) 检视核心版本(Docker需要64位版本,同时核心版本在3.10以上,如果版本低于3.10,需要升级核心)

uname -r

(2) 更新yum包:

yum update

(3) 新增yum仓库:

sudo tee /etc/yum.repos.d/docker.repo

[dockerrepo]

name=Docker Repository

baseurl=https://yum.dockerproject.org/repo/main/centos/7/

enabled=1

gpgcheck=1

gpgkey=https://yum.dockerproject.org/gpg

EOF

(4) 安装Docker

yum install docker-engine

(5) 启动Docker

service docker start

(6)配置docker远端访问

执行命令编辑档案

vim /usr/lib/systemd/system/docker.service

找到这一行

ExecStart=/usr/bin/dockerd

改为

ExecStart=/usr/bin/dockerd -H tcp:

unix:

修改完成后储存并重启Docker

service docker restart

测试访问 http://125.35.86.214:2375/version 如果有返回资料则配置成功。

(7)使用Docker国内映象(为Docker映象下载提速,非必须)

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh sh -s

http://fe8a7d6e.m.daocloud.io

3.Docker Compose的安装(1)下载docker-compose ,并放到/usr/local/bin/

https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname

-s`-`uname -m` > /usr/local/bin/docker-compose

(2)为Docker Compose指令码新增执行许可权

chmod +x /usr/local/bin/docker-compose

(3)安装完成,测试

docker-compose --version

结果显示:

docker-compose version 1.8.0, build f3628c7

说明Docker Compose已经安装完成了。

4.Docker使用Maven外挂构建并上传映象(1)新建Dockerfile档案 在专案的/src/main下新增资料夹docker,并在资料夹下建立Dockerfile档案,档案内容如下

# 基于哪个映象

FROM java:8

# 将本地资料夹挂载到当前容器

VOLUME /tmp

# 拷贝档案到容器,handcuffs-reg-0.0.1-SNAPSHOT.jar这里是maven打包后的名字

ADD handcuffs-reg-0.0.1-SNAPSHOT.jar app.jar

RUN bash -c touch /app.jar

# 配置容器启动后执行的命令

ENTRYPOINT [java,-Djava.security.egd=file:/dev/./urandom,-jar,/app.jar]

(2)修改pom.xml档案增加如下plugin imageName:映象名称 dockerDirectory:Dockerfile档案所在目录 dockerHost:docker所在宿主机ip 2375为docker开启的远端访问埠 其他配置采取预设即可

com.spotify

docker-maven-plugin

0.4.14

reg-service

src/main/docker

http://125.35.86.214:2375

/

${project.build.directory}

${project.build.finalName}.jar

每一个微服务专案都要进行配置。

(3)构建映象并上传至docker 使用maven执行如下命令

clean package docker:build -DskipTests

上传成功后,在服务器输入

docker images

可以看到所有的docker映象啦。

5.使用Docker Compose进行服务编排(1)在服务器任意目录,新建档案docker-compose.yml

version: 2

services:

eureka-server1:

restart: on-failure

image: reg-service

ports:

- 8761:8761

networks:

- eureka-net

environment:

SERVER_PORT: 8761

config:

image: config-service

networks:

- eureka-net

ports:

- 8091:8091

environment:

REGISTER_URL: http://114.115.185.152:8761/eureka/

SERVER_PORT: 8091

SERVER_GIT_URL: https://gitee.com/deanTheOne/handcuffs-config.git

SERVER_GIT_USERNAME: test

SERVER_GIT_PASSWORD: test

RABBITMQ_HOST: 39.105.152.144

RABBITMQ_PORT: 5672

RABBITMQ_USERNAME: mqTest

RABBITMQ_PASSWORD: mqTest

zuul:

restart: on-failure

image: gateway-service

ports:

- 8000:8000

environment:

REGISTER_URL: http://114.115.185.152:8761/eureka/

SERVER_PORT: 8000

SERVER_ADDR: 114.115.185.152

networks:

- eureka-net

networks:

eureka-net:

driver: bridge

档案编写完毕储存,切换到当前档案所在目录,输入命令启动Docker Compose

docker-compose -f docker-compose.yml up -d

停止Docker Compose命令

docker-compose -f docker-compose.yml down

作者:boonya来源:https://blog.csdn.net/u011508407/article/details/82153562

1.我建议你尽早进入大厂的 6 个理由

2.Spring Boot 并发登入人数控制

3.45 个值得收藏的 CSS 形状

4.淘宝技术架构演进之路

标签:

上一篇 目录 下一章

猜你喜欢

剑桥科技 电流中的水智选...
一、水电安装工的未来:智能化与平台化 在数字经济的浪潮下,传统行业正逐步向数字化转型。水电安装工作为技术和实践相结合的专业人群,其接单方式也面临着新的挑战...
关于太空的知识 温馨木质风格客...
在设计和装修客厅时,选择合适的风格是非常重要的。木质风格正好能提供一种温馨、自然且耐看的感觉,让人心情舒畅。下面,我们将探讨如何通过最新客厅装修效果图片大...
浪潮 水电承包合同范...
水电工程项目管理与风险控制的关键合同文件 在水电工程建设中,水电承包合同范本标准版扮演着至关重要的角色。它不仅是两个或多个相关方之间关于工程设计、施工、材...
中国科学院大学 水利类国家级期...
国家水利科学研究:推动水资源管理与工程技术创新 随着全球气候变化的加剧和人口增长,水资源短缺已成为世界上许多地区面临的一个严峻挑战。作为解决这一问题的重要...

强力推荐