n 第一章
文章目录
- 一:Docker概述
- 1:Docker是什么?
- 2:Docker与虚拟机的区别
- 3:Docker的使用场景
- Docker特点
- 二:Docker的核心概念
- 1:镜像
- 2:容器
- 3:仓库
- 三:安装Docker
- 1、安装最新版本Docker依赖版本环境
- 2、设置阿里云docker镜像源
- 3、安装Docker-CE,开启docker服务并设置开机自启
- 4、镜像加速
- 5、网络优化
- 四:Docker镜像操作
- 1.搜索镜像
- 2.获取镜像
- 3.查看镜像
- 4.添加镜像标签
- 5、删除镜像
- 6、导出镜像
- 五.容器的操作
- 1、创建容器(创建前必须有该镜像)
- 2、查看容器运行状态
- 3、开启容器,关闭容器
- 4、docker run命令
- 5、进入容器与退出容器
- 6、导出、导入容器
- 7、删除容器
- 8、批量删除容器
本章结构
一:Docker概述
1:Docker是什么?
- 一种轻量级的“ 虚拟机"
POS: (263, 246)
RGB: (255,255,255) - Linux容器里运行应用的开源_工具
2:Docker与虚拟机的区别
比对项 | Container(容器) | VM(虚拟机) |
启动速度 | 秒级 | 分钟级 |
运行性能 | 接近原生 | 有所损失 |
磁盘占用 | MB | GB |
数量 | 成百上千 | 一般几十台 |
封装程度 | 只打包项目代码和依赖关系,共享宿主机内核 | 完整的操作系统 |
3:Docker的使用场景
●打包应用程序简化部署
●可脱离底层硬件任意迁移
●例:服务器从腾讯云迁移到阿里云
- ■安装Docker
■Docker镜像创建与操作
■Docker数据管理
■Dockerfile基本创建方法
Dockerfile创建各种应用容器
Docker特点
1:服务彼此间相互独立(服务间的解耦)解耦:便于管理,防止数据过多积累在一个文件中
2:服务可以灵活迁移 docker引擎 docker-ce
二:Docker的核心概念
1:镜像
◆一个面向Docker容器引擎的只读模板
2:容器
◆从镜像创建的运行实例
3:仓库
◆集中保存镜像的地方
■CentOS安装Docker的两种方式
●使用CURL获得Docker的安装脚本进行安装
●使用YUM仓库来安装Docker
三:安装Docker
1、安装最新版本Docker依赖版本环境
yum install -y yum-utils device-mapper persistent-data Ivm2
yum-config-manager --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
2、设置阿里云docker镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安装Docker-CE,开启docker服务并设置开机自启
yum install -y docker-ce
systemctl start docker.service
systemctl enable docker.service
4、镜像加速
直接下载镜像,速度很慢,而一般镜像有比较大,所以我们进行镜像加速,使用阿里云的源,即开启阿里云的镜像加速
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://1gp17t5o.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
5、网络优化
- 开启路由转发
vi /etc/sysctl.conf
net.ipv4.ip_forward=1
sysctl -p
- 重启服务查看进程
service network restart
systemctl restart docker
- ■检查Docker版本查看Docker服务
docker version
四:Docker镜像操作
1.搜索镜像
docker search关键字
2.获取镜像
docker pull仓库名称[:标签]
3.查看镜像
docker images仓库名称[:标签]
获取镜像的详细信息
格式:docker inspect 镜像ID号
4.添加镜像标签
[root@server ~]# docker tag nginx:latest nginx:web #类似于别名
5、删除镜像
格式:docker rmi 仓库名:TAG标签
[root@server ~]# docker rmi nginx:latest
注:重定标签后无法使用ID删除,多重标签先删标签名,才可使用ID删除
6、导出镜像
格式:docker save -o 文件名 镜像名
8、载入镜像
docker load < nginx
五.容器的操作
1、创建容器(创建前必须有该镜像)
格式:docker create -it 镜像名 运行程序
docker create -it nginx:latest /bin/bash
-i 指容器的标准输入保持打开
-t 指Docker分配一个伪终端
2、查看容器运行状态
docker ps -a #-a 指列出最近一次启动的容器
3、开启容器,关闭容器
开启格式:docker start 容器ID号
关闭格式:docker stop 容器ID号
4、docker run命令
命令格式:docker run 镜像名 /bin/bash -c ls /
# docker run mysql /bin/bash -c ls /
注释:
/bin/bash指定运行环境,-c指定执行命令
== docker run命令会执行从创建容器,开启容器,执行命令,关闭容器等一系列过程。如果没有创建容器和镜像,就会从下载镜像开始执行,一直到关闭容器。执行完成后直接关闭,状态为exited==
5、进入容器与退出容器
格式:docker exec -it 容器ID /bin/bash
6、导出、导入容器
导出容器格式为:docker export 容器ID > 定义容器名
注意:导入容器只会生成镜像
```java
格式:cat 容器名 | docker import - 镜像:标签
7、删除容器
容器必须是exited 关闭状态,才能删除
格式:docker rm 容器ID号
8、批量删除容器
第一种:
[root@localhost ~]# dcoker rm `docker ps -aq`
第二种:
[root@localhost ~]# docker ps -a | awk '{print "docker rm"$1}' | bash 不能删除up状态的容器