前言:

做项目时用到了eureka做注册中心,由于eureka服务端需要单独启动一个服务,每次在不同的电脑上跑项目时都要新建一个eureka客户端跑起来,比较麻烦,因此就想将eureka部署到自己的服务器上去。刚好自己的服务器上有docker,于是就想着通过docker镜像在容器中运行eureka服务端。

步骤:

要做到在docker中运行自己的eureka服务端需要两个步骤:

第一步,建立一个eureka服务端项目。

第二步,将项目打包成docker镜像并运行。

建立一个eureka服务端项目

首先来做第一步:建立一个eureka服务端项目,这个很简单,按照以下步骤来就行了,可以说只有一行代码。

1、通过Spring Initalizr 创建一个项目,引入Eureka Server

或者直接建一个maven项目导入Eureka Server依赖

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId><version>3.0.3</version>
</dependency>

2、在@SpringBootApplication标注的主启动类上加上@EnableEurekaServer 注解

3、配置eureka

server:port: 8761
spring:application:name: eureka-server
eureka:instance:hostname: 127.0.0.1client:register-with-eureka: falsefetch-registry: falseservice-url:defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

接下来测试启动没问题就可以进行下一步了。

将项目打包成docker镜像并运行

首先使用maven插件将项目打成jar包(package/install 都可以),然后就可以看到在和src目录同级的target目录下生成了一个项目jar包。

然后在src目录下(参考上图)建一个Dockerfile文件,文件内容为:

#指使用jdk.18的java镜像,在容器中安装java.
FROM java:8
#作者
MAINTAINER author
#指向了一个/tmp的目录,springboot内置tomcat默认使用/tmp作为工作目录.
#作用是在主机的/var/lib/docker目录下创建了一个临时文件,并连接到容器的/tmp.
VOLUME /tmp
#将项目的jar文件作为app.jar添加到容器,app.jar就是别名.
ADD eureka-server-0.0.1-SNAPSHOT.jar app.jar
#表示在新创建的镜像中执行一些命令,然后把执行的结果提交到当前镜像.这里使用bash或sh都可以,没什么区别,bash完全兼容sh.
RUN bash -c 'touch /app.jar'
#容器暴露端口.
EXPOSE 8761
#应用启动命令,设置启动参数等
ENTRYPOINT [ "java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar" ]

然后将eureka -server项目jar包和Dockerfile一起上传到服务器

然后执行docker命令将项目打包成镜像

 docker build -t author/eureka-server:1.10.14 .其中author/eureka-server:1.10.14表示的意思是 作者/镜像名称:TAG(版本)
我这里写1.10.14是用的eureka-server的版本,简单点直接替换成 eureka-server:1.0 也可以
注意:命令后面需要一个参数".",代表当前路径

打包完成后查看当前docker内镜像

然后运行容器

docker run -d -p 8761:8761 --name eureka-server 8edee
其中8edee是镜像id的前几个字符,直接写镜像名称也可以

运行后访问服务器ip+8761 成功。

访问不成功记得开放端口!!踩坑了

参考:https://blog.csdn.net/cjbfzxz/article/details/106653116?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_baidulandingword-1&spm=1001.2101.3001.4242

在docker中运行自己的eureka服务端相关推荐

  1. 【DDD/CQRS/微服务架构案例】在Ubuntu 14.04.4 LTS中运行WeText项目的服务端

    在<WeText项目:一个基于.NET实现的DDD.CQRS与微服务架构的演示案例>文章中,我介绍了自己用Visual Studio 2015(C# 6.0 with .NET Frame ...

  2. ASP.NET Core 网站在Docker中运行

    Docker作为新一代的虚拟化方式,未来肯定会得到广泛的应用,传统虚拟机的部署方式要保证开发环境.测试环境.UAT环境.生产环境的依赖一致性,需要大量的运维人力,使用Docker我们可以实现一次部署, ...

  3. 在docker中运行ASP.NET Core Web API应用程序

    本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过程中,也会对docker的使用进行一些简单的描述.对于.NET Cor ...

  4. Docker Compose运行MySQL、Redis服务

    Docker Compose运行MySQL.Redis服务 前言:通过容器来统一管理开发中使用到的依赖,顺便学习docker-compose 1.docker-compose.yml 文件说明 2.d ...

  5. 在Docker中运行ASP.NET Web API解决方案

    目录 介绍 先决条件 如何容器化现有项目 添加docker-compose项目 带有docker-compose的容器化解决方案 添加环境变量 后端 前端 不使用Visual Studio运行您的应用 ...

  6. 在Docker中运行EOS(MAC版)

    在Docker中运行EOS(MAC版) 在Docker中也可以简单快速的构建EOS.IO.笔者在Mac平台下参考官方文档躺了一次河.记录如下: 安装依赖 Docker 版本 17.05或者更高 tes ...

  7. 斐讯N1-小钢炮Docker中运行SpringBoot应用

    斐讯N1-小钢炮Docker中运行SpringBoot应用 介绍 硬件:斐讯N1 系统:小钢炮(Linux) 容器:Docker 依赖环境:JDK.MySQL 目标:运行springboot web应 ...

  8. docker保护python源码_Tensorflow在Docker中运行和源码编译

    本文分享在在Docker中运行Tensorflow和进行源码编译的方法和步骤,包括:编译.构建docker镜像.创建和运行Docker容器.部署完的容器可以通过Jupyter Notebook进行访问 ...

  9. 如何在docker中运行MySQL实例(转载)

    如何在docker中运行MySQL实例 转自:https://blog.csdn.net/siying8419/article/details/79670246 通常初学者学习docker时,不太清楚 ...

  10. zkeacms mysql_在Docker中运行纸壳CMS并配置使用MySql

    纸壳CMS是基于ASP .Net Core开发的可视化内容管理系统,可以跨平台部署,可以在容器中运行.接下来看看如何在docker中运行纸壳CMS. 方式一 直接运行以下命令即可在docker中运行纸 ...

最新文章

  1. 【Python】疯狂的加速函数!
  2. Stream anyMatch查找案例
  3. 从/etc/inetd.conf学习服务(4)
  4. HTTP的⼏种请求⽅法及⽤途小谈(面试)
  5. 计算机算法设计与分析 Huffman编码问题
  6. vim配置Nerdtree
  7. php 图片上传 文件上传 大小 限制
  8. 为什么所有浏览器的userAgent都带Mozilla
  9. 电商兴桃,打造乡村振兴新样本
  10. CentOS下使用命令行Web浏览器Links
  11. hera(赫拉)任务调度系统--为数据平台打造的任务调度系统
  12. 群晖、黑群晖安装emby很慢,或者卡0%的解决办法,请收藏
  13. 计算机表格大小怎么调整,excel把表格拉大_excel调整单元格大小的方法步骤详解...
  14. ArcGIS 地图切图系列之(三)MapReduce 实现
  15. 如何进行js的debug
  16. 有道云笔记转CSDN博客
  17. 分布式多通道相机同时拍照系统
  18. 服务端和客户端之文件加密传输
  19. 写了一个播放quic的脚本,其他文件单独上传
  20. 亿级流量电商详情页系统设计与实战-虚拟机centos环境搭建

热门文章

  1. 2013,我的创业记忆片段
  2. android脚本精灵开发,触动精灵脚本开发示例代码
  3. 【寻找最佳小程序】03期:摩拜单车小程序——联合微信团队打造,实现不换码一扫即用...
  4. Spring的运行原理
  5. 计算机cpu的定义,CPU是什么?
  6. Android drawable.setBounds()+设置RadioButton的图片大小和位置
  7. c语言程序设计21点扑克牌,C语言程序设计-21点扑克牌游戏.pdf
  8. 数字图像处理(MATLAB版
  9. 2018年12月份计算机,桌面CPU天梯图2018年12月最新版 十二月台式电脑处理器排名...
  10. 单片机学习——存储器详解(程序存储器、片内RAM、拓展RAM、EEPROM)