docker的28个常用指令
1,查看Docker的版本详细信息。
docker version
2,查看Docker系统信息,包括镜像和容器数。
docker info
3,登陆到一个Docker镜像仓库。
docker login -u 用户名 -p 密码;
4,退出到一个Docker镜像仓库。
docker logout
5,从镜像仓库中拉取或者更新指定镜像;
docker pull
说明:
-a :拉取所有 tagged 镜像;
docker pull 镜像名字 例:docker pull python;
docker pull 镜像名字:版本号 例:docker pull python:3.6。
6,将本地的镜像上传到镜像仓库,要先登陆到镜像仓库;
docker push
说明:
docker push 镜像名字 例:docker push python;
docker push 镜像名字:版本号 例:docker push python:v1。
7,从Docker Hub查找镜像;
docker search
--no-trunc :显示完整的镜像描述;
-s :列出收藏数不小于指定值的镜像;
docker search 镜像名字 例 :docker search python。
8,创建一个新的容器并运行一个命令;
docker run
说明
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-p: 端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-v: 目录映射;
--name="nginx-lb": 为容器指定一个名称;
--env-file=[]: 从指定文件读入环境变量;
--restart=[]:重启策略:
a、no,默认策略,在容器退出时不重启容器;
b、on-failure,在容器非正常退出时(退出状态非0),才会重启容器;
c、on-failure:3,在容器非正常退出时重启容器,最多重启3次;
d、always,在容器退出时总是重启容器;
e、unless-stopped,在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器。
例:sudo docker run -itd \ 后台运行进入容器 --name=wssc \ 为容器起一个名字 --restart=always \ 退出时重启 --env-file ./env.list \ 需在当前目录下的env.list运行 -p 8011:80 \ 端口号映射 -v /var/www/project/data:/var/www/project/data \ 挂载 wellaac/wsscr:v1 镜像名字
9,启动一个或多个已经被停止的容器;
docker start
docker start 容器名字 例:docker start wssc。
10,停止一个运行中的容器;
docker stop
docker stop 容器名字 例:docker wssc;
docker stop $(docker ps -a -q) 停止所有容器。
11,重启容器;
docker restart
docker restart 容器名字 例:docker restart wssc。
12,删除一个或多少容器
docker rm
说明
-f :强制删除一个运行中的容器;
-v :-v 删除与容器关联的卷;
docker rm 容器名字 例:docker rm wssc
docker rm -f 容器名字 例:docker rm -f wssc。
13,在运行的容器中执行命令;
docker exec
说明
-i :即使没有附加也保持STDIN 打开;
-t :分配一个伪终端;
docker exec -it 容器名字 /bin/bash 例:docker exec -it wssc /bin/bash
14,列出容器;
docker ps
说明
-a :显示所有的容器,包括未运行的;
--format :指定返回值的模板文件;
-l :显示最近创建的容器;
-n :列出最近创建的n个容器;
--no-trunc :不截断输出;
-s :显示总的文件大小;
例:docker ps docker ps -a docker ps -n 5 。
15, 获取容器/镜像的元数据;
docker inspect
docker inspect 镜像名字/容器名字 例:docker inspect wssc 容器 docker inspect wellaac/wsscr:v1 镜像。
16,查看容器中运行的进程信息;
docker top
docker top 容器名字 例:docker top wssc。
17,获取容器的日志
docker logs
说明
-f : 跟踪日志输出;
--since :显示某个开始时间的所有日志;
-t : 显示时间戳;
--tail :仅列出最新N条容器日志;
docker logs -f 容器名字;
例:docker logs -f wssc 跟踪日志输出。
18,列出指定的容器的端口映射;
docker port
docker port 容器名字;例:docker port wssc。
19,从容器创建一个新的镜像
docker commit
说明
-a :提交的镜像作者;
-c :使用Dockerfile指令来创建镜像;
-m :提交时的说明文字;
-p :在commit时,将容器暂停;
docker commit -a 'nihao.com' -m'xiawang' 容器 新的镜像;
例:docker commit -a 'nihao.com' -m'xiawang' q8da8ds7ads1 wssc:v1。
20,用于容器与主机间的数据拷贝;
docker cp
docker cp 主机路径 53543d59db8a:容器里面的路径;
例:docker cp /home/python/index.html 53543d59db8a:/var/www/html ;
docker cp 53543d59db8a:容器里面的路径 主机路径;
例:docker cp 53543d59db8a:/var/www/html ./pytho。
21,检查容器里文件结构的更改;
docker diff
docker diff 容器名字 例:docker diff wssc。
22,列出本地镜像;
docker image
说明
-a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);
--no-trunc :显示完整的镜像信息;
-q :只显示镜像ID;
例:docker images -a docker images -q。
23,删除本地一个或多少镜像;
docker rmi
说明
-f :强制删除;
docker rmi 容器名字 例:docker rmi wssc;
docker rmi -f 容器名字 例:docker rmi -f wssc。
24,标记本地镜像,将其归入某一仓库[重新命名]
docker tag
说明:
重新命名的可以直接上传到自己的docker仓库里面;
docker tag 镜像名字 镜像名字:v1;
例:docker tag ubuntu wellqa/web:v1。
25,命令用于使用 Dockerfile 创建镜像
docker build
说明
--tag, -t: 镜像的名字及标签;
最后一点别漏;
需要在dockerfile目录下执行;
docker -t 镜像名字 . ;
例:docker build -t wellass/web:v1. 。
26,查看指定镜像的创建历史;
docker history
说明
-H :以可读的格式打印镜像大小和日期,默认为true;
--no-trunc :显示完整的提交记录;
-q :仅列出提交记录ID;
docker history 镜像名字;
例:docker history wellass/web:v1。
27,将指定镜像保存成 tar.gz
docker save
说明
-o :输出到的文件;
docker save 镜像名字 -o tar.gz文件;
例:docker save python:3.6 -o ./wellaas_python.tar.gz。
28,将从tar归档文件或者标准输入载入镜像;
docker load
说明
-i :从tar归档文件中读取;
docker load -i tar.gz文件;
例:docker load -i ./wellaas_python.tar.gz;(CentOS)
例:docker image load -i ./wellaas_python.tar.gz。