一、安装
yum源:使用ali的源
wget http://mirrors.aliyun.com/repo/Centos-7.repo
yum install docker
二、配置
修改存储位置
vi /etc/sysconfig/docker-storage-setup
将/usr/share/container-storage-setup/container-storage-setup文件内容拷贝过来
修改
DEVS=/dev/sdb ##选择单独挂载的硬盘
VG=docker-vg ##名字随便起
然后执行
docker-storage-setup
docker会自动创建pv/vg/lv,并使用thin卷方式
三、打开docker
执行
systemctl start docker
查看/var/lib/docker目录下已经产生内容了
systemctl enable docker
四、镜像管理
1、列举镜像
docker images
2、搜索镜像
docker search imagename
3、拉取镜像
docker pull imagename
4、使用docker国内加速器
修改/etc/docker/daemon.json文件
{
"registry-mirrors": ["https://l10nt4hq.mirror.aliyuncs.com"]
}
重启docker服务
systemctl restart docker
五、管理docker
1、打开一个容器
docker run -it imagename bash
-i 标准交互
-t 以终端方式打开
bash 调用bash指令
docker run -d -p 80:80 --restart=always imagename
-d 后台运行
-p 端口映射,80端口映射成80,8888:80把宿主机8888映射到容器的80端口
--restart=always 宿主机开机自动运行该容器
2、打开一个已经运行的容器
docker exec -it imagename bash
3、查看docker容器
docker ps -a
-a 查看所有容器,包括没在运行的
4、关闭docker容器
docker stop name/container_id
或
docker kill name/container_id (强制关闭)
5、删除容器
docker rm name/container_id
6、删除镜像
docker image rm REPOSITORY_id
参考:https://blog.csdn.net/u010246789/article/details/53958662
六、镜像操作
1、将已存在的镜像导出成文件
docker save docker.io/nginx:1.12 > /root/nginx_1.12.tar
2、将导出的镜像文件导入成镜像
docker load < /root/nginx_1.12.tar
3、把容器做成镜像
docker commit -m "wdst v1" -a=wdst container_name imagename
-m 添加描述
-a 创建者
4、获取镜像帮助
web登录hub.docker.com/ /httpd/可以在docker镜像网站找到httpd的官方镜像,里面有详细帮助
七、容器操作
1、将容器导出成文件
docker export -o outpath container_name
2、将上一步文件导入成镜像
docker import -m "wdst v2" sourcefile imagename
-m 添加描述
3、容器关联外部目录
docker run -d -p 80:80 --restart=always -v sourcepath:objpath imagename
-v 对应外部目录与内部目录,外部目录不存在会自动创建
4、容器内外拷贝文件
docker cp container_name:/path /path
5、不同容器之间的调用
docker -it --link=container_name imagename bash
--link 指定连接到的容器名称
八、日志
1、查看某镜像转变为容器后做了什么操作
docker log imagename
2、查看某镜像的历史镜像操作
docker events -f image=imagename --since 绝对时间
3、查看某镜像历史使用情况
docker history imagename
4、查看某容器的所有信息
docker inspect container_name
九、docker仓库搭建
下载仓库专用镜像
docker pull docker.io/registry
运行仓库镜像,使用5000端口
docker run -d -p 5000:5000 --restart=always docker.io/registry
将镜像转到本地仓库
docker tag docker.io/debian:8.10 registry_ip:5000/path/debian:8.10
查看当前images状态
docker images
修改配置文件,将本地仓库设置为安全
vi /etc/docker/daemon.json
将
"registry-mirrors": ["https://l10nt4hq.mirror.aliyuncs.com"]
更改为
"registry-mirrors": ["https://l10nt4hq.mirror.aliyuncs.com"],"insecure-registries": ["registry_ip:5000"]
重启docker
systemctl restart docker
上传镜像
docker push registry_ip:5000/path/debian:8.10
镜像上传到本地仓库容器的/var/lib/registry/docker/registry/v2/repositories/中