Docker

本文详细介绍了Docker的安装过程,包括依赖组件的安装、镜像仓库的设置、镜像加速配置,并演示了如何运行hello-world镜像。此外,还概述了Docker的基本组成,如镜像、容器和仓库。文章还列举了Docker常用命令,包括创建、启动、管理和删除容器以及镜像。最后,探讨了Docker容器数据卷的概念和特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、Docker 安装与启动

1.1 Docker 相关资源网址

1.2 Docker 安装前置条件

1.3 Docker 的基本组成

1.4 Docker 的安装

yum install -y gcc       依赖绑定

yum install -y gcc-c++

安装依赖组件yum install -y yum-utils device-mapper-persistent-data lvm2

 设置镜像仓库,国内用户推荐使用阿里云镜像仓库yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

 更新 yum 软件包索引yum makecache fast

安装 dockeryum install -y docker-ce

 配置开机自启、启动 Docker

systemctl enable docker systemctl start docker

 查看当前 docker 安装版本docker version

1.5 Docker 镜像加速

daemon.json 文件配置示例

重新加载服务配置文件systemctl daemon-reload

重启 docker 服务systemctl restart docker

二、 Hello-World 镜像与运行原理

2.1 运行 hello-world 镜像

docker run hello-world

2.2 hello-world 运行原理

三、 Docker 命令

3.1 常用命令汇总

3.1.1    帮助命令

3.2 镜像命令

3.2.1 列出本地镜像列表

​3.2.2 查找某个镜像的信息

3.2.3 拉取镜像到本地

3.2.4 删除单个本地镜像,-f 参数表示强制删除

3.3 容器命令

3.3.1 新建启动容器

3.3.2 查看当前正在运行的 docker 容器

3.3.4 退出容器

3.3.5 通过--name 手动给容器起名

3.3.6 启动已停止的容器

3.3.7 重启容器

3.3.8 停止容器

3.3.9 强制终止容器

3.3.10 删除已停止容器

3.3.11 删除所有容器

3.3.12 启动守护式容器

3.3.13 查看容器日志

3.3.14 查看运行容器内的进程

3.3.15 查看容器内部细节

3.3.16 进入正在运行的容器并以命令行交互方式 

3.3.17 从容器内拷贝文件到主机上

四、 Docker 容器数据卷

4.1容器数据卷是什么?

4.2容器数据卷的特点

4.3 V 命令容器内添加数据卷


一、Docker 安装与启动

1.1 Docker 相关资源网址

docker 官网(国外网站访问很慢):http://www.docker.com

Docker Hub 仓 库 官 网 ( 国 外 网 站 很 慢 , 推 荐 使 用 国 内 镜 像 ) :
https://hub.docker.com/
Docker Hub 类似于 git hub,存储了很多的已经打包好的镜像

1.2 Docker 安装前置条件

Docker 支持以下的 CentOS 版本:CentOS 6.5 以上(64-bit) CentOS 7 (64-bit) 目前,CentOS 仅发行版本中的内核支持 Docker。

  • Docker 运行在 CentOS 7 上,要求系统为 64 位、系统内核版本为 3.10 以上。
  • Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为 64 位、系统内核版本为 2.6.32-431 或者更高版本。

查看自己的内核 uname 命令.uname 命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。


查看已安装的 CentOS 版本信息

1.3 Docker 的基本组成

镜像(image):Docker 镜像(Image)就是一个只读的模板。镜像可以用来创建 Docker 容器,一个镜像可以创建很多容器。
容器(container):Docker 利用容器(Container)独立运行的一个或一组应用。容器是用镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。可以把容器看做是一个简易版的 Linux 环境(包括 root 用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。容器的定义和镜像几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的。

仓库(repository):仓库(Repository)是集中存放镜像文件的场所。
仓库(Repository)和仓库注册服务器(Registry)是有区别的。仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)。
仓库分为公开仓库(Public)和私有仓库(Private)两种形式。
最大的公开仓库是 Docker Hub(https://hub.docker.com/),存放了数量庞大的镜像供用户下载。国内的公开仓库包括阿里云 、网易云等。

 仓储/镜像/容器这几个概念的总结:
        Docker 本身是一个容器运行载体或称之为管理引擎。我们把应用程序和配置依赖打包好形成一个可交付的运行环境,这个打包好的运行环境就似乎 image 镜像文件。只有通过这个镜像文件才能生成 Docker 容器。image 文件可以看作是容器的模板。Docker 根据 image 文件生成容器的实例。同一个 image 文件,可以生成多个同时运行的容器实例。

  • image 文件生成的容器实例,本身也是一个文件,称为镜像文件。
  • 一个容器运行一种服务,当我们需要的时候,就可以通过 docker 客户端创建一个对应的运行实例,也就是我们的容器。
  • 至于仓储,就是放了一堆镜像的地方,我们可以把镜像发布到仓储中,需要的时候从仓储中拉下来就可以了。

1.4 Docker 的安装

Docker 版本分为 CE 版(免费版)和企业版(收费版),下面在 CentOS7.x 环境下安装 docker 免费版。首先通过 yum 安装 gcc 和 gcc-c++

yum install -y gcc       依赖绑定

yum install -y gcc-c++

 因为 CentOS 官方仓库中 docker 版本实在是太老旧,缺失了很多功能和特性,所以需要手工添加 Docker 官方仓库源来安装新版本的 Docker-CE。如果有旧版本 docker,首先卸载旧版本 docker

yum remove docker \

docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine

安装依赖组件
yum install -y yum-utils device-mapper-persistent-data lvm2

 设置镜像仓库,国内用户推荐使用阿里云镜像仓库
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

 更新 yum 软件包索引yum makecache fast

安装 dockeryum install -y docker-ce

 配置开机自启、启动 Docker

systemctl enable docker systemctl start docker

 查看当前 docker 安装版本docker version

 卸载 docker-ce 版本

systemctl stop docker yum -y remove docker-ce rm -rf /var/lib/docker

为了保证卸载干净,最好再执行一次完全卸载

yum remove docker \
docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \docker-selinux \ docker-engine-selinux \ docker-engine

1.5 Docker 镜像加速

默认情况下 docker 会到 hub.docker.com 去拉取镜像,速度非常慢,推荐使国内镜像,需要进行配置,CentOS7 配置如下:首先在/etc 下创建 docker 目录

mkdir -p /etc/docker

创建编辑/etc/docker/daemon.json 文件,并设置国内镜像源地址

vi /etc/docker/daemon.json

 Docker 中国官方镜像加速
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}

网易 163 镜像加速
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}

中科大镜像加速
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

阿里云需要设置账号
{
"registry-mirrors": ["https://{自已的账号}.mirror.aliyuncs.com"]
}

daemon.json 文件配置示例

重新加载服务配置文件systemctl daemon-reload

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值