实战:Docker容器虚拟化技术(使用DockerFile构建镜像并搭建 swarm+compose集群)5
实战:Docker容器虚拟化技术 (使用DockerFile构建镜像并搭建 swarm+compose集群)5
要求:
使用DockerFile构建镜像并搭建 swarm+compose集群
在Swarm 集群中(至少两个节点)使用 compose 文件 (docker-compose.yml) 来配置、启动多个服务 包括: Mysql、Redis以及应用程序MyProject.jar
实现流程分析
- 创建springboot程序MyProject,打成jar包:MyProject.jar
- 使用dockerfile 将MyProject.jar构建成镜像dabing/MyProject:1.0
- 搭建Swarm 集群
- 在Swarm 集群中使用 compose 文件 (docker-compose-myproject.yml) 来配置、启动多个服务
包括: Mysql、Redis以及应用程序MyProject
一、创建springboot程序并打成jar包:MyProject.jar
二、使用dockerfile 将MyProject.jar构建成镜像dabing/MyProject:1.0
将MyProject.jar拷贝到管理节点和工作节点上
管理节点和工作节点上 编写dockerfile-myproject文件
# This Dockerfile uses the centos imageFROM centos:7.6.1810# 指定容器内部使用语言ENV LANG="en_US.UTF-8"ENV LC_ALL="en_US.UTF-8"# 指定JDK环境ENV JAVA_HOME="/apps/jdk"ENV PATH=${JAVA_HOME}/bin:$PATH# 使用亚洲/上海时区RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime# 创建工作目录RUN mkdir -p /apps /data/apps# 安装JDKADD ./jdk-8u251-linux-x64.tar.gz /apps/RUN ln -s /apps/jdk1.8.0_251 /apps/jdkADD ./UnlimitedJCEPolicyJDK8/US_export_policy.jar /apps/jdk/jre/lib/security/ADD ./UnlimitedJCEPolicyJDK8/local_policy.jar /apps/jdk/jre/lib/security/# 拷贝Hot.jar并运行COPY MyProject.jar MyProject.jarEXPOSE 8080ENTRYPOINT ["java","-jar","MyProject.jar"]
在管理节点和工作节点上 使用dockerfile 将MyProject.jar构建成镜像dabing/MyProject:1.0
查看生成的镜像
三、搭建Swarm 集群
具体参考swarm集群搭建:Docker容器虚拟化技术—Docker运维管理(Swarm集群管理)3
四、在Swarm 集群中使用 compose 文件 (docker-compose-myproject.yml) 来配置、启动多个服务 包括: Mysql、Redis以及应用程序MyProject
在manager节点使用 compose 文件 (docker-compose-myproject.yml) 来配置 (包括: Mysql、Redis以及应用程序MyProject)
version: "3.0"services:mysql:image: mysql:5.7.30ports:- 3306:3306command:--default-authentication-plugin=mysql_native_password--character-set-server=utf8mb4--collation-server=utf8mb4_general_ci--explicit_defaults_for_timestamp=true--lower_case_table_names=1--default-time-zone=+8:00environment:MYSQL_ROOT_PASSWORD: "root"volumes:- "/docker/mysql/db:/var/lib/mysql"deploy:mode: replicatedreplicas: 2redis:image: redis:5.0.9environment:- TZ=Asia/beijingports:- 6379:6379volumes:- /docker/redis/data:/datadeploy:mode: replicatedreplicas: 2myproject: image: dabing/myproject:1.0ports:- 8888:8888environment: TZ: Asia/Shanghaideploy:mode: replicatedreplicas: 2
构建服务
启动服务
查看服务
验证
实战:Docker容器虚拟化技术(使用DockerFile构建镜像并搭建 swarm+compose集群)5相关推荐
- Docker容器虚拟化技术---Docker高级实战(DockerFile)2
Docker容器虚拟化技术-Docker高级实战(DockerFile) DockerFile是一个文本格式的配置文件,用户可以使用DockerFile来快速创建自定义的镜像. 1. DockerFi ...
- docker容器虚拟化技术_Docker,虚拟机和容器的全面介绍
docker容器虚拟化技术 by shota jolbordi 通过Shota Jolbordi Docker has been a buzzword for tech people for the ...
- Docker容器虚拟化技术---Docker运维管理(Docker Compose)4
Docker容器虚拟化技术-Docker运维管理(Docker Compose)4 Docker Compose 通过前面的讲解我们知道使用一个Dockerfile模板文件,可以很方便地定义一个单独的 ...
- Docker容器虚拟化技术---Docker运维管理(Swarm集群管理)3
Docker容器虚拟化技术-Docker运维管理(Swarm集群管理)3 Swarm集群管理 docker swarm是docker官方提供的一套容器编排系统,是Docker公司推出的官方容器集群平台 ...
- Docker——容器虚拟化技术
目录 一.Docker介绍 诞生背景 Docker介绍 虚拟机技术与容器虚拟化技术 虚拟机技术 容器虚拟化技术 官方网站 二.Docker安装 安装Docker Docker管理命令 Docker底层 ...
- Docker容器虚拟化技术---Docker安装和操作1
一.Docker安装 Docker在主流的操作系统和云平台上都可以使用,包括Linux操作 系统(如Ubuntu.Debian.CentOS.Redhat等).MacOS操作系统和 Windows操作 ...
- Docker学习之六:基于Dockerfile构建镜像
镜像制作 一般镜像的制作,通常需要修改镜像的配置文件,比如nginx的配置文件,可以通过以下的方式: 将配置文件做成存储卷,从宿主机编辑好之后,启动容器时应用程序加载配置文件的路径并和宿主机的目录建立 ...
- 基于docker容器下mongodb 4.0.0 的Replica Sets+Sharded Cluster集群
目标 使用三台物理机做数据库集群 任意一台宕机之后不会影响线上的业务运转 不会有任何的数据丢失 方案 采用的是Replica Sets+Sharded Cluster的集群 具有高可用,故障转移,分布 ...
- docker容器下mongodb 4.0.0 的Replica Sets+Sharded Cluster集群
https://segmentfault.com/a/1190000023144572
最新文章
- C# 3.0入门系列
- 计算机基础知识考试模拟试题,计算机基础知识模拟试题及答案
- scrapy + selenium + chromedriver爬取动态数据
- C++多态的概念及前提条件(最精辟)
- 李国庆俞渝撕破脸,当当喊话:冲动是魔鬼 冷静下来吧
- OPNET网络仿真分析-1.5、OPNET中英文对比
- 【转帖】Java并发编程:volatile关键字解析
- 升级iOS10后,AVPlayer有时候播放延时和播放不了的问题
- 数学常用特殊符号读音
- getPrepayId php,php微信支付接口开发程序
- Pikachu漏洞平台练习
- Sentinel流量防控卫兵
- 关于黑马视频String 与int之间相互转化
- 华为p10自带计算机,华为P10评测:EMUI 5.1越用越快、总结
- 《剑指Offer》题解与笔记(Java实现)
- 姿态和位置,四旋翼的控制流程
- css 参考手册 部署到本地
- 【JAVA】贪吃蛇的初步实现(五)
- AIX常用操作-转载
- 金三银四、金九银十 面试宝典 Spring、MyBatis、SpringMVC面试题 超级无敌全的面试题汇总(超万字的面试题,让你的SSM框架无可挑剔)