目录
一、部署20版的docker
1.1 安装依赖包
1.2 设置阿里云镜像源
1.3 安装docker-ce 社区版
1.4 关闭增强机制
1.5 开启服务
1.6 设置镜像加速
1.7 网络优化
二、linux 系统中的命令 记10条(cd ls pwd mv cp )
2.1 查询docker 版本
2.2 搜索镜像
2.3 技能点
2.4 下载镜像(默认是从docker hub)
2.5 查看镜像列表
2.6 获取镜像信息
2.7 添加镜像标签
2.8 删除
2.9 镜像导出
2.10 镜像导入
三、容器操作
3.1查询容器
3.2 创建容器
3.3 启动容器
3.4 容器状态有哪些,分别是什么场景?
3.5 停止容器
3.6 进入容器
3.7 容器导出
3.7 容器导出
3.8 容器导入(生成镜像)
3.9 批量删除容器&&批量删除镜像
3.9.1 删除容器
3.9.2 强制删除容器(正在运行的)
3.9.3 批量删除容器(正则匹配)
3.9.4 删除非up状态的 rm -f : 强制删除所有
3.9.5 批量删除“exit”状态(指定状态)的容器
3.10容器打包为镜像
一、部署20版的docker
1.1 安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
1.2 设置阿里云镜像源
cd /etc/yum.repos.d/
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
1.3 安装docker-ce 社区版
yum install -y docker-ce#环境配置systemctl stop firewalld
systemctl disable firewalldsetenforce 0
如果出现以下情况
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum -y install docker-ce
1.4 关闭增强机制
vim /etc/selinux/config
SELINUX=disabled
1.5 开启服务
systemctl start docker
systemctl enable docker
1.6 设置镜像加速
这里我们使用阿里云的镜像,加速镜像下载速度
注册阿里云账号并登录
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": [镜像加速地址]
}
EOF
systemctl daemon-reload
systemctl restart docker
1.7 网络优化
vim /etc/sysctl.conf
net.ipv4.ip_forward=1sysctl -p
systemctl restart network
systemctl restart docker
二、linux 系统中的命令 记10条(cd ls pwd mv cp )
2.1 查询docker 版本
docker version && docker info
2.2 搜索镜像
docker search nginx
2.3 技能点
PS Linux 发行版:alpine centos redhat Debian(apt包管理,centos 是rpm) 生产环境可能会用的
2.4 下载镜像(默认是从docker hub)
docker pull 镜像名称
2.5 查看镜像列表
docker images——查看当前docker下的下载镜像信息REPOSITORY:镜像属于的仓库;
TAG:镜像的标签信息,标记同一个仓库中的不同镜像;
IMAGE ID:镜像的唯一ID 号,唯一标识一个镜像,经过md5方式加密过;
CREATED:镜像创建时间;
VIRTUAL SIZE:镜像大小;
2.6 获取镜像信息
docker inspect 镜像ID
2.7 添加镜像标签
docker tag nginx:latest nginx:lnmp
2.8 删除
docker rmi 镜像名称
docker rmi 镜像标签docker rmi `docker images -q` 批量删除镜像
docker rmi `docker images|grep "nginx" 批量删除nginx镜像
2.9 镜像导出
docker save -o 文件名 镜像名
2.10 镜像导入
docker load < nginx
使用场景,有的生产环境,企业不直接使用docker 私有仓库,而是存放在一个ftp服务器中,按需上传下载应用场景ftp winscp ssh 登陆VPN
三、容器操作
3.1查询容器
docker ps -a
3.2 创建容器
docker create -it nginx:latest /bin/bash-i 让容器的标准输入保持打开
-t 分配一个伪终端
-d 后台守护进程的方式运行
3.3 启动容器
docker start 容器id#启动容器(一次性执行)
docker run centos:7 /usr/bin/bash -c ls /
-c:后面加 调用命令
3.4 容器状态有哪些,分别是什么场景?
up exsit(0 137) created
0:是正常退出
137:是异常退出
3.5 停止容器
docker stop 容器ID
3.6 进入容器
进入容器
① 使用run 【一次性进入】(临时使用的)
docker run -it nginx:latest /bin/bash② exec(容器必须为开启状态)
docker exec -it 容器ID /bin/bashexec 和shell 是两种运行模式
PS:
docker run -it 会创建前台进程,但是会在输入exit后终止进程。
docker attach 会通过连接stdin,连接到容器内输入输出流,会在输入exit后终止容器进程.
docker exec -it 会连接到容器,可以像SSH一样进入容器内部,进行操作,可以通过exit退出容器,不影响容器运行。【这个方式不是特别常用,因为ssh不安全】
3.7 容器导出
docker export 容器ID > 文件名
示例:
docker export 容器ID > nginx_a
3.7 容器导出
docker export 容器ID > 文件名
示例:
docker export 容器ID > nginx_a
3.8 容器导入(生成镜像)
docker import 导出的文件名(容器) 指定镜像名称
示例:
docker import nginx_a nginx:latest
cat 文件名(容器) | docker import - nginx:latest
3.9 批量删除容器&&批量删除镜像
3.9.1 删除容器
docker rm 容器ID
3.9.2 强制删除容器(正在运行的)
docker rm -f 容器ID
3.9.3 批量删除容器(正则匹配)
docker ps -a | awk ‘{print "docker rm "$1}’ | bash
3.9.4 删除非up状态的 rm -f : 强制删除所有
docker rm docker ps -q
3.9.5 批量删除“exit”状态(指定状态)的容器
for i in `docker ps -a | grep -i exit | awk '{print $1}'`; do docker rm -f $i;donecreated
3.10容器打包为镜像
docker run -it --name Nginx.01 nginx:latest /bin/bashdocker commit 34be469451e9 nginx-v1beta