SpringCloud笔记七:微服务下Docker

SpringCloud笔记七:微服务下Docker

Docker介绍和使用场景

  1. 什么是Docker

1、可以快速的部署和启动应用

2、实现虚拟化,完整资源隔离

3、一次编写,四处运行(有一个定的限制,比如Docker是基于Linux x64的,无法在32bit的linux/windows/unix环境下使用。)

  1. 为什么用

1、提供一次性的环境,假如需要安装mysql,则需要安装很多依赖库,版本等。如果使用Docker则通过镜像就可以直接启动运行。

2、快速动态扩容,使用docker部署了一个应用,可以制作成镜像,然后通过Docker快速启动。

3、组建微服务架构,可以在一个机器上模拟出微服务架构,启动多个应用

4、更好的资源隔离和共享。

总之:开箱即用,快速部署,可移植性强,环境部署。

  1. 总结什么是Docker

就是虚拟机的增强版,可以将一个大的服务器,分割成很多小的虚拟机,但是比虚拟机强,因为可以随意的给每个小的虚拟机调度系统资源,比如一个服务器有10个核,分了两个系统,docker可以随意给其中一个系统增加2个核。

基于go语言开发的,在LCX(linux中类似win中的虚拟机)基础上进行的封装。

Centos7安装Docker

Docker安装教程

  1. 查看linux系统版本信息

lsb_release -a

Docker仓库,镜像,容器核心知识讲解

  1. 镜像

Docker 镜像 -Docker images:

​ 镜像就是容器运行时的只读模板,操作系统+软件运行环境+用户程序

Docker 容器 -Docker containers:

​ 容器包含了某个应用运行所需要的全部环境。

Docker 仓库:-Docker registeries:

​ 用来保存镜像,有公有和私有仓库,好比maven的*仓库和本地私服。

​ 官方镜像仓库:https://hub.docker.com/

配置国内镜像仓库配置

是通过镜像创建的容器。

Docker在云服务器上的实际应用

  1. 常用命令

安装部署好Docker后,执行的命令都是docker开头 xxx是镜像的名字

搜索镜像:docker search xxx

列出当前系统存在的镜像:docker images

拉取镜像:docker pull xxx

​ xxx 是镜像的名字(格式:REPOSITORY:TAG)

​ REPOSITORY:表示镜像的仓库源,TAG:镜像的标签。

运行一个容器:

​ docker run -d --name “rabbit_mq” -p 5672:5672 -p 15672:15672 rabbitmq:management

​ docker run - 运行一个容器

​ -d 后台运行

​ -p 端口映射

​ rabbitmq:management (格式:REPOSITORY:TAG),如果不能指定tag,默认使用最新的。

​ --name 指定容器别名

列举当前运行的容器:docker ps

检查容器内部信息:docker inspect 容器名称

删除镜像:docker rmi IMAGE_NAME

​ 强制移出镜像,不管是否有容器使用该镜像,增加 - f 参数

停止某个容器:docker stop 容器名称

启动某个容器:docker start 容器名称

移除某个容器:docker rm 容器名称(容器必须是停止状态)

启动docker :systemctl start docker

容器命令

使用Docker部署Nginx服务器

  1. 获取镜像

docker search nginx

docker run 首先会从本地找镜像,如果有则直接启动,没有的话,从镜像仓库拉起,在启动。

  1. 列举和拉取

docker images

docker pull nginx

  1. 启动Nginx

docker run -d --name “nginx” -p 8088:80 nginx (或者是IMAGE_ID)

通过修改端口可以启动多个nginx

curl进行测试

curl “http://127.0.0.1:8088”

会返回前端页面代码

构建自己的镜像仓库

  1. 阿里云镜像仓库

阿里云镜像仓库

  1. 私有镜像仓库

用于存放公司内部的镜像,不提供给外部使用。

springCloud 开发了一个支付系统–》做成一个镜像,(操作系统+软件运行环境+用户程序)

  1. 阿里云构建一个私有镜像仓库

在阿里云容器服务里面可以构建

SpringCloud笔记七:微服务下Docker

  1. 本地安装docker

win10安装docker文档与win7不同

win10可以直接安装docker,win7需要安装docker toolbox

  1. 本地docker,服务器docker和镜像仓库的关系

1、本地应用通过docker打成镜像包,将镜像包上传到镜像仓库。

2、服务器端通过docker从镜像仓库里面拉取镜像包

3、服务器启动镜像包。

4、同理,服务器也可以打成包,放到镜像仓库里面,提供本地拉取。

SpringCloud笔记七:微服务下Docker