Docker学习随笔

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   #容器内可读可写

原文地址:https://www.cnblogs.com/ucas123/p/12926779.html