docker pull nginx 默认pull最新的镜像
一个镜像可以生成多个容器实例
docker run hello-world:版本 先本地寻找镜像,找不到去Hub云端下载 (以镜像,创建对应容器。)
帮助命令:
docker --version 显示版本
docker info 自身的信息
docker --help
镜像命令:
docker images 列出本地的镜像模板
docker images -a 显示镜像的层
docker images -q 只显示镜像ID
docker images --digests 显示镜像的摘要信息
docker images --no-trunc 显示完整的镜像信息
docker search 某个镜像的名称XXX 去DockerHub上查找镜像名
docker pull 某个镜像的名称XXX :版本号 去配置的镜像源网址下载
docker rmi 某个镜像的名称XXX:版本号 或者镜像ID 删除指定版本镜像,若存在容器无法删除,加-f容器镜像一起删除。
容器命令:
docker run -it 镜像名称或者ID --name MyOS 生成镜像对应的容器
docker run -d centos /bin/sh -c "while true ; do echo hello zzyy; sleep 2;done" 后台运行每两秒循环打印hello zzyy
docker ps 列出docker中运行的所有容器
docker ps -l 列出docker上次运行的容器
docker ps -n 3 列出上3次运行过的容器
docker ps -a 列出所有运行过的容器
docker ps -q 列出正在运行的容器
退出容器 1、exit 容器停止退出 2、Ctrl+P+Q 容器不停止退出
docker start 容器ID或者容器名 启动容器
docker restart 容器ID或者容器名 重启容器
docker stop 容器ID或者容器名 停止容器(正常关机)
docker kill 容器ID或者容器名 强制停止容器(拔电源)
docker rm 容器ID或者容器名 删除已经停止的容器
docker rmi 容器ID或者容器名 删除已经停止的容器包括其镜像
docker rm -f 容器ID或者容器名 删除还没有停止的容器
docker rm -f $(docker ps -a -q) 一次删除多个容器
**************************************************************************************************
docker log -f -t --tail 行数 容器ID或者容器名 查看容器日志 *-t 加入时间戳 *-f 跟随最新日志打印 *--tail 数字 显示最后多少条
docker inspect 容器ID或者容器名 查看容器内部细节
docker attach 容器ID或者容器名 直接进入容器启动命令行的终端,不会启动新的进程
docker exec -t 容器ID或者容器名 ls -l /tmp 在docker中执行容器中的命令 在外面获取结果
docker exec -it 容器ID或者容器名 /bin/bash 进入容器交互命令
docker cp 容器ID或者容器名:/容器内目录文件 /docker系统目录文件 将容器中的文件拷贝到磁盘 做持久化
docker commit 容器ID或者容器名 保存为镜像名称 #由容器保存为镜像
docker save 镜像名称 xxx.tar #将镜像保存为本地xxx.tar包
docker load < xxx.tar #将本地xxx.tar包加载到docker镜像
docker -p #映射的是IP和内外端口 -d #后台运行 -v #映射文件(当前主机目录文件映射为内部文件)
卷技术
docker volume ls
具名挂载 匿名挂载 指定路径挂载
-v 容器内路径 #匿名挂载
-v 卷名:容器内路径 # 具名挂载
-v /宿主机路径:容器内路径 #指定本地和容器内挂载路径
docker run -d -P --name nginx2 -v juming-nginx:/etc/nginx:ro nginx #容器内read only 只能通过宿主机操作
docker run -d -P --name nginx2 -v juming-nginx:/etc/nginx:rw nginx #容器内可读可写