1.在windows下打包

微服务应用通过maven进行打包,在项目的pom.xml执行mvn clean package,或者直接通过idea或者eclipse进行maven打包

之上操作将在项目的 target目录生成文件microservice-discovery-eureka-0.0.1-SNAPSHOT.jar 包

2.将microservice-discovery-eureka-0.0.1-SNAPSHOT.jar拷贝到Linux环境(可以通过CRT等连接方式)

3.在microservice-discovery-eureka-0.0.1-SNAPSHOT.jar所在的目录创建Dockerfile文件,内容如下

 FROM java:8

 VOLUME /tmp

 ADD microservice-discovery-eureka-0.0.1-SNAPSHOT.jar app.jar

 RUN bash -c 'touch /app.jar'

 EXPOSE 8761

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

4.通过docker build命令构建新的镜像

(注意:Dockerfile和jar包要在同一个文件夹下)

执行命令 docker build -t cakin24/microservice-discovery-eureka-0.0.1 .

 [root@localhost microfile]# ls
Dockerfile microservice-discovery-eureka-0.0.1-SNAPSHOT.jar
[root@localhost microfile]# docker build -t cakin24/microservice-discovery-eureka-0.0.1 .
Sending build context to Docker daemon 44.79MB
Step 1/6 : FROM java:8
8: Pulling from library/java
5040bd298390: Pull complete
fce5728aad85: Pull complete
76610ec20bf5: Pull complete
60170fec2151: Pull complete
e98f73de8f0d: Pull complete
11f7af24ed9c: Pull complete
49e2d6393f32: Pull complete
bb9cdec9c7f3: Pull complete
Digest: sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d
Status: Downloaded newer image for java:8
---> d23bdf5b1b1b
Step 2/6 : VOLUME /tmp
---> Running in c6c8df634611
Removing intermediate container c6c8df634611
---> 1bdb7dd203b9
Step 3/6 : ADD microservice-discovery-eureka-0.0.1-SNAPSHOT.jar app.jar
---> d88f6144fb16
Step 4/6 : RUN bash -c 'touch /app.jar'
---> Running in d217d42a3713
Removing intermediate container d217d42a3713
---> b24c68563734
Step 5/6 : EXPOSE 8761
---> Running in 2a2663de2b31
Removing intermediate container 2a2663de2b31
---> 305d7a1bed02
Step 6/6 : ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
---> Running in c7b7c777ee72
Removing intermediate container c7b7c777ee72
---> 6e55e8eef9b1
Successfully built 6e55e8eef9b1
Successfully tagged cakin24/microservice-discovery-eureka-0.0.1:latest
[root@localhost microfile]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
cakin24/microservice-discovery-eureka-0.0.1 latest 6e55e8eef9b1 24 seconds ago 733MB
mysql 5.7 e47e309f72c8 13 days ago 372MB
hello-world latest fce289e99eb9 7 weeks ago 1.84kB
java 8 d23bdf5b1b1b 2 years ago 643MB
registry.cn-hangzhou.aliyuncs.com/acs-sample/mysql 5.7 ec7e75e5260c 3 years ago 360MB

5.执行以下命令 运行微服务

查看镜像 docker images  通过上面步骤可以看到当前多了一个Eureka的镜像,这个就是我们想要的

运行容器 docker run -d -p 8761:8761 cakin24/microservice-discovery-eureka-0.0.1

查看已经运行的容器情况  docker ps   可以看到Eureka已经在运行当中

 [root@localhost microfile]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
cakin24/microservice-discovery-eureka-0.0.1 latest 6e55e8eef9b1 24 seconds ago 733MB
mysql 5.7 e47e309f72c8 13 days ago 372MB
hello-world latest fce289e99eb9 7 weeks ago 1.84kB
java 8 d23bdf5b1b1b 2 years ago 643MB
registry.cn-hangzhou.aliyuncs.com/acs-sample/mysql 5.7 ec7e75e5260c 3 years ago 360MB
[root@localhost microfile]# docker run -d -p 8761:8761 cakin24/microservice-discovery-eureka-0.0.1
bc05ffb47756bc1193f71c668acd2ddb51392de883dba3d6f26a786723d78397
[root@localhost microfile]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
bc05ffb47756 cakin24/microservice-discovery-eureka-0.0.1 "java -Djava.securit…" 11 seconds ago Up 8 seconds 0.0.0.0:8761->8761/tcp flamboyant_golick
e778509d7366 mysql:5.7 "docker-entrypoint.s…" About an hour ago Up About an hour 0.0.0.0:3306->3306/tcp, 33060/tcp pwc-mysql

6.查看运行效果

访问发布的容器对应的ip和端口 效果如下,

centos7下docker发布第一个微服务应用(Eureka)的更多相关文章

  1. 小D课堂 - 新版本微服务springcloud+Docker教程_3-04 SpringCloud微服务核心组件Eureka介绍和闭源后影响

    笔记 4.SpringCloud微服务核心组件Eureka介绍和闭源后影响     简介:         SpringCloud体系介绍             官方地址:http://projec ...

  2. Docker、kubernetes、微服务、SpringBoot/Cloud...好乱!到底要不要学?

    Docker.微服务日益火热的今天,相信标题上这些名词大家都不陌生.但也相信有很多同学并不够清楚他们的概念,不理解它们的关系,也可能有这样的疑惑:不知道跟我有没有关系?要不要学习?怎么去学习?学哪些东 ...

  3. QCon技术干货:个推基于Docker和Kubernetes的微服务实践

    2016年伊始,Docker无比兴盛,如今Kubernetes万人瞩目.在这个无比需要创新与速度的时代,由容器.微服务.DevOps构成的云原生席卷整个IT界.在近期举办的QCon全球软件开发大会上, ...

  4. 50篇经典珍藏 | Docker、Mesos、微服务、云原生技术干货

    概念篇 全方位探(tian)索(keng)Mesos各种存储处理方式 老肖有话说@Mesos User Group第四次约会 技术实践 | Mesos 全方位“烹饪”指南 回顾 JAVA 发展轨迹,看 ...

  5. docker入门与部署微服务--学习笔记

    最近公司进一步去windows,走向 linux+云化. 原来的一大坨windows虚拟机服务器都要转向linux, 既然走向linux的话,那么docker肯定是要涉足的. 故学习了docker入门 ...

  6. centos7下docker的安装教程

    Centos7下docker安装教程以及踩过的那些坑 推荐在Centos下安装docker,在windows下安装docker可能会遇到很多的问题,而且docker官方推荐使用linux环境来使用do ...

  7. springcloud微服务实战:Eureka+Zuul+Feign/Ribbon+Hystrix Turbine+SpringConfig+sleuth+zipkin

    相信现在已经有很多小伙伴已经或者准备使用springcloud微服务了,接下来为大家搭建一个微服务框架,后期可以自己进行扩展.会提供一个小案例: 服务提供者和服务消费者 ,消费者会调用提供者的服务,新 ...

  8. springcloud微服务实战:Eureka+Zuul+Ribbon+Hystrix+SpringConfig

    原文地址:http://blog.csdn.net/yp090416/article/details/78017552 springcloud微服务实战:Eureka+Zuul+Ribbon+Hyst ...

  9. springCloud进阶(微服务架构&Eureka)

    springCloud进阶(微服务架构&Eureka) 1. 微服务集群 1.1 为什么要集群 为了提供并发量,有时同一个服务提供者可以部署多个(商品服务).这个客户端在调用时要根据一定的负责 ...

随机推荐

  1. MySQL 并行复制(MTS) 从库更新的记录不存在实际却存在

    目录 背景 版本 分析 测试 背景 开了并行复制的半同步从库SQL 线程报1032错误,异步复制从库没有报错,偶尔会出现这种 版本 mysql 5.7.16 redhat 6.8 mysql> ...

  2. python并发编程之进程池,线程池concurrent.futures

    进程池与线程池 在刚开始学多进程或多线程时,我们迫不及待地基于多进程或多线程实现并发的套接字通信,然而这种实现方式的致命缺陷是:服务的开启的进程数或线程数都会随着并发的客户端数目地增多而增多, 这会对 ...

  3. 【并发】3、LockSupport阻塞与唤醒,相较与wait和notify

    我们可以使用wait和notify分别对象线程进行阻塞或者唤醒,但是我们也可以使用LockSupport实现一样的功能,并且在实际使用的时候,个人感觉LockSupport会更加顺手 范例1,wait ...

  4. 03-03 java 顺序语句结构,选择结构if语句

    顺序结构: /* 流程控制语句:可以控制程序的执行流程. 分类: 顺序结构 选择结构 循环结构 顺序结构: 从上往下,依次执行. */ class ShunXuJieGouDemo { public ...

  5. Postman入门

  6. 什么是编程语言,什么是Python解释器

    转自白月黑羽python在线教程:http://www.python3.vip/doc/blog/python/2018071401/ 0基础学Python之1:什么是编程语言,什么是Python解释 ...

  7. 《松本行弘的程序世界》读书笔记(上)——面向对象、程序块、设计模式、ajax

    1. 前言 半个月之前买了这本书,还是经园子里的一位网友推荐的.到现在看了一半多,基础的都看完了,剩下的几章可做高级部分来看.这本书看到现在,可以说感触很深,必须做一次读书笔记! 关于这本书,不了解的 ...

  8. 交换排序:冒泡排序vs快速排序

    在开发的过程中, 经常会遇到集合排序, 那么一般情况下, 我们都是使用list.OrderBy()的方式来排序, 也无需关注到里面算法的实现是个什么样子. 正好这几天准备回顾一下数据结构与算法. 首先 ...

  9. 当语音识别搭配AI之后,我的语音助手更懂我的心了

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云AI中心发表于云+社区专栏 我今天演讲主要分四个部分,第一个是分享语音识别概述,然后是深度神经网络的基础:接下来就是深度学习在语 ...

  10. linux 初始化工作环境

    #!/bin/sh # # init workspace # /bin/svnserve -d -r /home/oracle/projects --listen-port= su - oracle ...