Docker概述
技术总监 架构师 程序员 测试 运维 前端 UI
我们写的代码会接触到好几个环境:开发环境、测试环境以及生产环境等等。多种环境去部署同一份代码,由于环境原因往往会出现软件跨环境迁移的问题(也就是**“水土”不服**)
针对这种问题如何解决?我们可以将工程及此工程依赖的所有软件打包到一个容器中统一部署
docker概念
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GO71N2IT-1658803565075)(assets/1580810482809.png)]
- Docker 是一个开源的应用容器引擎
- 诞生于 2013 年初,基于 Go 语言实现, dotCloud 公司出品(后改名为Docker Inc)
- Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上。
- 容器是完全使用沙箱机制,相互隔离
- 容器性能开销极低。
- Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)
安装docker
安装docker
Docker可以运行在MAC、Windows、CentOS、UBUNTU等操作系统上,本课程基于CentOS7 安装Docker。官网:https://www.docker.com
环境要求:centos7的虚拟机
建议直接使用我今天提供的虚拟机 用户名是root 密码是itcast
- 自己去安装docker(以下过程可能出现错误,如果出错重试即可)
#在线安装,需要下载-->解压-->编译安装 (可以跳过)
# 1、yum 在线安装
yum install docker -y #大概需要一两分钟
#2、启动docker (可以跳过)
systemctl start docker
#3、查看docker状态
systemctl status docker
docker架构
docker的几个概念
docker使用流程:
1.配置docker进程
2.从仓库下载镜像到宿主机
3.通过镜像创建容器并启动
配置镜像加速
默认情况下,从docker hub(https://hub.docker.com/)上下载docker镜像,太慢。一般都会配置镜像加速器:
- USTC:中科大镜像加速器(https://docker.mirrors.ustc.edu.cn)
- 阿里云
- 网易云
- 腾讯云
(1) 创建文件并配置
在linux中自己创建:/etc/docker/daemon.json文件,并导入镜像地址(二选一)、
直接 vi /etc/docker/daemon.json
中科大镜像地址
{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
}
阿里云镜像地址
{
"registry-mirrors": ["https://ajs551uw.mirror.aliyuncs.com"]
}
(2) 重新启动docker
#重启
systemctl restart docker
#查看docker信息
docker info
Docker引擎的命令(重点)
进程相关命令
docker 进程:daemon(docker软件(服务))
#启动docker服务:
systemctl start docker
#停止docker服务:
systemctl stop docker
#重启docker服务:
systemctl restart docker
#查看docker服务状态: