Docker 常用命令
查看镜像
docker images
包含 仓库名,标签,镜像ID,创建时间以及所占用的空间
此命令回去执行 拉取DockerHub的镜像源
docker pull <名称> <版本> (默认会pull最新版本)
运行镜像
docker run 就是运行容器的命令, -it -i:交互式操作, -t终端 进入bash --rm 是指容器退出后随之将其删除
docker run -it --rm ubuntu:14.04 bash
root@9839c757a804:/# cat /etc/os-release
NAME="Ubuntu"
VERSION="14.04.5 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.5 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
虚悬镜像
有有时我们会pull下来类似于这样的镜像
<none> <none> 00285df0df87 5day ago 342 MB
此镜像其实是有标签存在的,只是随着官网的镜像维护更新后 重新pull时这个镜像被转移到了新的镜像身上,而旧镜像本身的名称被取消,所以显示none 当然 docker build 也会出现同样的现象
此条命令可以显示这类镜像
docker images -f dangling=true
我们可以用下面命令删除此类镜像
docker rmi $(docker images -q -f dangling=true)
中间层镜像
与虚悬镜像不同,她是其它一些镜像的依赖镜像不可删除,删除的话可能导致一些依赖丢失从而出错。相同的层只会存一遍,所以它们的存在对你来说没有什么影响
docker images -a
我现在想查看我在ubuntu:16.04 这个镜像之后pull的镜像
docker images -f since=ubuntu:16.04
REPOSITORY TAG IMAGE ID CREATED SIZE
nest_console latest 04aeff17b50c 3 hours ago 531.4 MB
nest_php latest c230b821f887 4 hours ago 504.4 MB
centos latest 67591570dd29 3 days ago 191.8 MB
-f 是--filter的简写。 如果想看到某个位置之前的镜像 可以将since换成 before
docker images -f before=ubuntu:16.04
当然也可以通过LABEL来进行过滤
docker images -f label=com.example.version=0.1
我们先去创建并启动一个容器并监听本地端口8080
docker run --name webnginx -d -p8080:80 nginx
通过终端方式进入 webnginx 容器
docker exec -it webnginx bash
使用命令修改nginx的数据内容:
echo "<h1>hello fanxiao2</h1>" >/usr/share/nginx/html/index.html
我们修改了文件,于是乎也动用了容器的存储层,使用命令可以查看具体改动
docker diff webnginx
C /root
A /root/.bash_history
C /run
A /run/nginx.pid
C /usr
C /usr/share
C /usr/share/nginx
C /usr/share/nginx/html
C /usr/share/nginx/html/index.html
C /var
C /var/cache
C /var/cache/nginx
A /var/cache/nginx/client_temp
A /var/cache/nginx/fastcgi_temp
A /var/cache/nginx/proxy_temp
A /var/cache/nginx/scgi_temp
A /var/cache/nginx/uwsgi_temp
本作品采用《CC 协议》,转载必须注明作者和本文链接
前一段时间看过最近快忘了,温习一下
怎么映射本地目录到容器目录?不用进容器修改文件