纯手写SpringBoot教案系列-SpringBoot进阶课程-Docker

七.Docker容器技术

1. Docker简介

Docker是一个开源的应用容器引擎;

Docker按照实际应用场景并不是属于开发的范畴,而是属于运维的范畴,我们通常把提升开发和运维效率的技术集合叫做DevOps,这也是时下人们的话题之一,Docker就是其中的核心之一;

Docker不是虚拟机,但是实现了虚拟机的效果,启动速度却比虚拟机快了N倍,能达到毫秒级的启动速度;

类比等同于Windows镜像系统,我们不用再去装常用的软件和驱动;

而Docker可以自己定制自己的"系统";

比如我们通常开发好应用需要部署的时候,需要手动装Mysql,Redis,JDK,Tomcat(当然SpringBoot中Tomcat可以省掉)…

这时候工作就显得很繁琐并且重复;我们就可以使用Docker打包我们的镜像,提供给他人或者自己使用,同时也能使用别人打包好的镜像;

我们就可以使用容器技术来加快我们的部署和运维效率;

并且容器使用了沙箱技术,系统开销极低;

2. 安装Docker

2.1 windows下的安装(略)

因为很少会有应用部署到windows下的[手动滑稽脸]

2.2 Linux下的安装

  1. 安装linux虚拟机(土豪直接买服务器)

    vmware太大,不适合我们开发场景,这里推荐oracle公司的virtualbox

    下载virtualbox

    https://pan.baidu.com/s/1jIBZEpK

    密码:05hm

    下载后一直下一步安装即可

  2. 安装centos7镜像(已配置好的文件)

    下载地址(建议用迅雷下载)

    http://www.lerx.com/html/g7/2019/01-11/165010750-82.html

    下载后导入镜像

    [外链图片转存失败(img-PeJaHBi5-1567948189670)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1566888079341.png)]

    一直下一步就ok,如果不放心可以清空下mac地址(一般不用清空)

    连接虚拟机,

    账户:root

    密码:ilovelerx

    连接成功后搭建环境完成!

2.3 在linux上安装Docker

这里演示使用实际的部署环境(阿里云香港2核)

[外链图片转存失败(img-QEnbEbxt-1567948189671)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1566899519196.png)]

安装Docker

#首先查看内核版本(docker要求必须3.10以上)
uname -r
#更新软件源
yum update
#安装docker
yum install docker
#启动docker
systemctl start docker
#查看docker版本
docker -v
#开机启动docker
systemctl enable docker

Docker常用操作

#docker查询软件
docker search mysql
实际查询地址:dockerhub.com
中国镜像地址:
#docker拉取镜像
docker pull {镜像名}:版本号
#docker 查看所有镜像
docker images
#docker移除镜像
docker rmi {imageId}

操作步骤

搜索镜像>拉取镜像>根据镜像启动容器

Docker容器操作

#启动容器(-d:后台运行)
docker run --name {containerName} -d {imageName:version}
#查询运行中的容器
docker ps
#查询所有的ring器
docker ps -a
#停止容器
docker stop {containerId | containerName}
#开始容器
docker start {containerId | containerName}
#删除容器(容器必须是停止状态)
docker rm {containerId}
#端口映射
在启动时加上-p {外部端口}:{本地端口}
#查看容器日志,在tomcat下查看的就是tomcat的日志
docker logs {containerId}

生产环境一般使用的命令:docker run -d -p 80:8080tomcat(一般不指定名字)

如果外网访问不了,关闭防火墙(仅开发环境使用,生产环境可以在后台开启指定端口)

service firewalld stop

2.4 docker实战安装mysql

上https://hub.docker.com搜索mysql

右上角有拉取的命令

docker pull mysql

进入主页后获取安装命令

$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

然后在此基础上加上我们的端口映射即可使用

$ docker run --name some-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

一些mysql的高级操作

启动时设置编码

$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

你可能感兴趣的:(纯手写SpringBoot教案,SpringBoot)