目录
一、部署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容器打包为镜像
yum install -y yum-utils device-mapper-persistent-data lvm2
cd /etc/yum.repos.d/
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce
#环境配置
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
如果出现以下情况
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum -y install docker-ce
vim /etc/selinux/config
SELINUX=disabled
systemctl start docker
systemctl enable docker
这里我们使用阿里云的镜像,加速镜像下载速度
注册阿里云账号并登录
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [镜像加速地址]
}
EOF
systemctl daemon-reload
systemctl restart docker
vim /etc/sysctl.conf
net.ipv4.ip_forward=1
sysctl -p
systemctl restart network
systemctl restart docker
docker version && docker info
docker search nginx
PS Linux 发行版:alpine centos redhat Debian(apt包管理,centos 是rpm) 生产环境可能会用的
docker pull 镜像名称
docker images——查看当前docker下的下载镜像信息
REPOSITORY:镜像属于的仓库;
TAG:镜像的标签信息,标记同一个仓库中的不同镜像;
IMAGE ID:镜像的唯一ID 号,唯一标识一个镜像,经过md5方式加密过;
CREATED:镜像创建时间;
VIRTUAL SIZE:镜像大小;
docker inspect 镜像ID
docker tag nginx:latest nginx:lnmp
docker rmi 镜像名称
docker rmi 镜像标签
docker rmi `docker images -q` 批量删除镜像
docker rmi `docker images|grep "nginx" 批量删除nginx镜像
docker save -o 文件名 镜像名
docker load < nginx
使用场景,有的生产环境,企业不直接使用docker 私有仓库,而是存放在一个ftp服务器中,按需上传下载
应用场景
ftp winscp ssh 登陆VPN
docker ps -a
docker create -it nginx:latest /bin/bash
-i 让容器的标准输入保持打开
-t 分配一个伪终端
-d 后台守护进程的方式运行
docker start 容器id
#启动容器(一次性执行)
docker run centos:7 /usr/bin/bash -c ls /
-c:后面加 调用命令
up exsit(0 137) created
0:是正常退出
137:是异常退出
docker stop 容器ID
进入容器
① 使用run 【一次性进入】(临时使用的)
docker run -it nginx:latest /bin/bash
② exec(容器必须为开启状态)
docker exec -it 容器ID /bin/bash
exec 和shell 是两种运行模式
PS:
docker run -it 会创建前台进程,但是会在输入exit后终止进程。
docker attach 会通过连接stdin,连接到容器内输入输出流,会在输入exit后终止容器进程.
docker exec -it 会连接到容器,可以像SSH一样进入容器内部,进行操作,可以通过exit退出容器,不影响容器运行。【这个方式不是特别常用,因为ssh不安全】
docker export 容器ID > 文件名
示例:
docker export 容器ID > nginx_a
docker export 容器ID > 文件名
示例:
docker export 容器ID > nginx_a
docker import 导出的文件名(容器) 指定镜像名称
示例:
docker import nginx_a nginx:latest
cat 文件名(容器) | docker import - nginx:latest
docker rm 容器ID
docker rm -f 容器ID
docker ps -a | awk ‘{print "docker rm "$1}’ | bash
docker rm docker ps -q
for i in `docker ps -a | grep -i exit | awk '{print $1}'`; do docker rm -f $i;done
created
docker run -it --name Nginx.01 nginx:latest /bin/bash
docker commit 34be469451e9 nginx-v1beta