拉取镜像
docker pull <镜像名称>
删除镜像
docker rmi<镜像ID>
查看镜像的详细信息:
docker inspect <镜像ID>
搜寻镜像:
docker search<镜像名>
创建镜像:
基于已有的镜像容器创建
docker commit -a<作者> -m<提交信息> -pause=true
基于本地模板导入:
sudo cat <tar.gz>|docker import -<name>:<tag>
使用Dockerfile配置
基于已有的镜像容器创建:docker commit -a "test" -m "newimages" 6a5da7192556 testimage
6a5da7192556:容器ID,testimage:新创建镜像的名称
docker rmi -f<镜像ID> 强制删除(不推荐)
存出和导入镜像
docker save -o **.tar <name>:<tag> **可以是名字
载入镜像:
docker load -input /<**.tar
docker load --input testimage.tar
docker image : 列出本地镜像
docker image ls:列出本地的镜像
runoob@runoob:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 14.04 90d5884b1ee0 5 days ago 188 MB
php 5.6 f40e9e0f10c8 9 days ago 444.8 MB
nginx latest 6f8d099c3adc 12 days ago 182.7 MB
mysql 5.6 f2e8d6c772c0 3 weeks ago 324.6 MB
httpd latest 02ef73cf1bc0 3 weeks ago 194.4 MB
ubuntu 15.10 4e3b13c8a266 4 weeks ago 136.3 MB
hello-world latest 690ed74de00f 6 months ago 960 B
training/webapp latest 6fae60ef3446 11 months ago 348.8 MB
各个选项说明:
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
docker pull ....:拉取镜像
docker ps -a:默认docker ps命令会查询到所有正在运行的容器,添加参数-a后,则无论是否在运行中,都会被查找到
docker exec -it 容器id /bin/bash:进入一个容器
问题:安装完docker后,执行docker相关命令,出现
”Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/json: dial unix /var/run/docker.sock: connect: permission denied“
docker守护进程启动的时候,会默认赋予名字为docker的用户组读写Unix socket的权限,因此只要创建docker用户组,并将当前用户加入到docker用户组中,那么当前用户就有权限访问Unix socket了,进而也就可以执行docker相关命令
sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试docker命令是否可以使用sudo正常使用