一、Docker 基本概念
概念 | 说明 |
Docker 镜像(Images) | Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。 |
Docker 容器(Container) | 容器是独立运行的一个或一组应用,是镜像运行时的实体。 |
Docker 客户端(Client) | Docker 客户端通过命令行或者其他工具使用 Docker SDK (https://docs.docker.com/develop/sdk/) 与 Docker 的守护进程通信。 |
Docker 主机(Host) | 一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。 |
Docker Registry | Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。 Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。 一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。 通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。 |
Docker Machine | Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。 |
二、docker版本
1.Docker-CE指Docker社区版,由社区维护和提供技术支持,为免费版本,适合个人开发人员和小团队使用。
2.Docker-EE指Docker企业版,为收费版本,由售后团队和技术团队提供技术支持,专为企业开发和IT团队而设计。
Docker的发布版本分为Stable版和Edge版,区别在于前者是按季度发布的稳定版(发布慢),后者是按月发布的边缘版(发布快)。
实验步骤:
一、登录易优云,进入课程—>云计算与虚拟化技术—>进入实验实训—>搭建docker环境-3—>开始实验
二、进入系统
centos7.6的密码:code2022
打开终端,切换到root用户:sudo su -
三、修改IP
修改之后,重启服务:systemctl restart network
配置域名解析:vi /etc/resolv.conf
ping www.baidu.com 可以ping通
四、CentOS Docker 安装
Docker 支持以下的 64 位 CentOS 版本:CentOS 7、CentOS 8或更高版本...
1.查询已安装的docker:yum list installed | grep docker
并卸载旧版本docker:yum -y remove docker-ce.x86_64
2.安装必要的一些系统工具
yum provides '*/applydeltarpm'
yum install deltarpm -y
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3.添加软件源(阿里云)信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
查看是否添加成功:ls /etc/yum.repos.d
4.更新并安装Docker-CE
yum -y install docker-ce
看到上面提示,安装成功。
如果提示您接受 GPG 密钥,请选是。
安装之后,启动docker :systemctl start docker
5.查看docker 的版本
docker version
6.关闭运行的防火墙
将该配置文件中下面项目设置如下:SELINUX=disabled
使用命令:systemctl status firewalld.service查看防火墙状态
使用命令:systemctl stop firewalld.service 关闭运行的防火墙
关闭之后,再次查看防火墙状态
7.开启 docker 并设置开机自启动
systemctl start docker
systemctl enable docker
五、Docker 加速器配置
配置Docker加速器,将会提升在国内获取Docker官方镜像的速度,否则后面下载镜像的过程会很慢,甚至有可能无法下载镜像。
国内很多云服务商都提供了国内加速器服务,例如:
科大镜像:https://docker.mirrors.ustc.edu.cn/
网易:https://hub-mirror.c.163.com/
阿里云:https://<自己申请的ID>.mirror.aliyuncs.com
七牛云加速器:https://reg-mirror.qiniu.com
以配置阿里云加速器为例:
vi /etc/docker/daemon.json
如果系统没有改目录和文件,需要新建 mkdir /etc/docker
在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):
之后重新启动服务:
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
检查加速器是否生效
在命令行执行 docker info,如果从结果中看到了如下内容,说明配置成功。
检查加速器是否生效配置加速器之后,如果拉取镜像仍然十分缓慢,请手动检查加速器配置是否生效。
六、验证Docker是否正确安装
Docker 允许你在容器内运行应用程序,使用 docker run 命令来在容器内运行一个应用程序。
1.通过docker run 运行容器,输出Hello world
docker run hello-world
第二种方式:Docker 以 centos 镜像创建一个新容器,然后在容器里执行 bin/echo "Hello world",然后输出结果
各个参数解析:
docker: Docker 的二进制执行文件。
run: 与前面的 docker 组合来运行一个容器。
centos 指定要运行的镜像,Docker 首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载最新的公共镜像。
/bin/echo "Hello world": 在启动的容器里执行的命令
以上命令完整的意思可以解释为:。
七、docker初步操作
1、查看历史所有被创建和被停止的容器
docker ps -a
2、运行交互式的容器
通过 docker 的两个参数 -i -t,让 docker 运行的容器实现"对话"的能力:
各个参数解析:
-t: 在新容器内指定一个伪终端或终端。
-i: 允许你对容器内的标准输入 (STDIN) 进行交互。
注意第二行,此时我们已进入一个centos 系统的容器
可以尝试在容器中运行命令 cat /proc/version和ls分别查看当前系统的版本信息和当前目录下的文件列表
可以通过运行 exit 命令或者使用 CTRL+D 来退出容器。
注意第三行中 表明我们已经退出了当前的容器,返回到当前的主机中,容器自动关闭。
3、启动、停止容器
通过 docker ps 查看,容器正在运行
使用docker start 容器ID(注意:容器ID必须存在) 命令启动容器
查看正在运行的docker
使用 docker stop 容器ID 命令来停止容器:
1
通过 docker ps 查看,容器已经停止工作:
可以看到容器已经不在了。