Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。
一个完整的Docker有以下几个部分组成:
DockerClient客户端
Docker Daemon守护进程
Docker Image镜像
DockerContainer容器
镜像(Image): 类似虚拟机镜像
容器(Container): 类似linux系统环境,运行和隔离应用。容器从镜像启动的时候,docker会在镜像的最上一层创建一个可写层,镜像本身是只读的,保持不变。
仓库(Repository): 每个仓库存放某一类镜像。
容器、仓库、镜像运行关系图:
1、安装环境包
yum install -y yum-utils device-mapper-persistent-data lvm2
2、使用阿里的docker仓库
[root@localhost ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
//安装docker-ce
[root@localhost ~]# yum install -y docker-ce
systemctl start docker
systemctl enable docker
systemctl stop firewalld.service
setenforce 0
3、加速镜像的下载
[root@localhost docker]# tee /etc/docker/daemon.json <<EOF
{
"registry-mirrors" : ["https://abc1234.mirror.aliyuncs.com"] //加速器地址由阿里云官网自行获取(这里是随便写的)
}
EOF
[root@localhost ~]# systemctl daemon-reload //刷新全局
[root@localhost ~]# systemctl restart docker
#!/bin/bash
#Docker引擎部署
#安装依赖包
yum install yum-utils device-mapper-persistent-data lvm2 -y
#设置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装Docker-ce
yum install -y docker-ce
#关闭防火墙及增强型安全功能
systemctl stop firewalld.service
setenforce 0
#启动Docker并设置为开机自启动
systemctl start docker.service
systemctl enable docker.service
#镜像加速服务(每个人的阿里加速地址都不同,请自行前往阿里官网获取)
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://123456.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
#网络优化
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
service network restart
systemctl restart docker
#检验容器是否启动完成
docker images
if [ $? -eq 0 ];then
echo "Docker启动完成"
else
echo "ERROR"
systemctl status docker
exit 1
fi
1、搜索镜像
docker search 关键字
2、获取镜像
docker pull 仓库名[:标签]
3、查看已存在的所有镜像
docker images
4、查看镜像信息
docker images 仓库名[:标签]
docker inspect 镜像ID号
5、更改原有标签
docker tag 原名称[:原标签] 新名称[:新标签]
6、删除镜像
docker rmi 仓库名[:标签]
7、导出镜像
docker save -o 保存文件名 保存的镜像名
8、载入镜像
docker load --input 保存文件名
docker load < 保存文件名
9、上传镜像
docker push 仓库名[:标签]
1、创建容器
docker create [选项] 运行的镜像 /bin/bash环境
常用选项:
“-i” 容器的标准输入常开
“-t” 让docker分配一个伪终端
2、查看容器运行状态
docker ps [选项]
常用选项:
“-a” 列出最近一次启动的容器
3、启动容器
docker start 容器ID/名称
4、终止容器
docker stop 容器ID/名称
5、创建容器并启动执行shell命令
docker run [选项] 容器名 执行的命令
常用选项:
“-d” 在后台运行
run 执行镜像流程:
创建容器→启动容器→进入容器执行命令→退出容器
若镜像不存在则会多出下载镜像这一步
实例
//以/usr/bin/bash交互模式,启动paigeeworld/centos7容器,执行ls /命令
docker run paigeeworld/centos7 /usr/bin/bash -c ls /
6、进入容器
docker exec [选项] 容器ID/名称 /bin/bash
#以交互模式执行容器
7、导出容器
docker export 容器ID/名称 > 保存文件名
8、导入容器(仅能导入容器中的镜像,容器需要手动创建)
cat 保存文件名 | docker import -生成的镜像名:标签
9、删除容器
docker rm [选项] 容器ID/名称
10、批量删除容器
docker ps -a | awk '{"docker rm "$1}' | bash
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。