docker 常用命令
docker 基本命令
1、docker info
查询docker 基本信息
2、docker version
查询 docker 版本信息
3、docker logs
docker logs : 常用容器日志docker logs [OPTIONS] CONTAINER
OPTIONS说明:
-f : 跟踪日志输出
--since :显示某个开始时间的所有日志
-t : 显示时间戳
--tail :仅列出最新N条容器日志
docker logs -f nginx 或者 docker logs -f nginx容器id
跟踪查看容器nginx的日志输出docker logs --since="2020-04-01" --tail=10 nginx
查看容器nginx从2020年4月1日后的最新10条日志
4.docker run
docker run :创建一个新的容器的运行命令docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS说明:
-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-p: 端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
--name="nginx-lb": 为容器指定一个名称;
--dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;
--dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;
-h "mars": 指定容器的hostname;
-e username="ritchie": 设置环境变量;
--env-file=[]: 从指定文件读入环境变量;
--cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;
-m :设置容器使用内存最大值;
--net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container:<name|id>
四种类型;
--link=[]: 添加链接到另一个容器;
--expose=[]: 开放一个端口或一组端口;
docker run --name nginx -d nginx:latest
使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为 nginx docker run -P -d nginx:latest
使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口docker run -p 80:80 -v /data:/data -d nginx:latest
使用镜像 nginx:latest,以后台模式启动一个容器,将容器的80端口映射到主机的80端口,主机的目录/data映射到容器的/data。docker run -p 127.0.0.1:80:8080/tcp ubuntu bash
绑定容器的8080端口,并将其映射到本地主机127.0.0.1的80端口上。docker run -it nginx:latest /bin/bash
使用镜像nginx:latest以交互模式启动一个容器,在容器内执行/bin/bash命令
5、docker pull
docker pull : 从镜像仓库中拉取或者更新指定镜像docker pull [OPTIONS] NAME[:TAG|@DIGEST]
OPTIONS说明:
-a :拉取所有 tagged 镜像
--disable-content-trust :忽略镜像的校验,默认开启
从Docker Hub下载java最新版镜像。docker pull java
从Docker Hub下载REPOSITORY为java的所有镜像。docker pull -a java
6、docker push
docker push : 将本地的镜像上传到镜像仓库,要先登陆到镜像仓库docker push [OPTIONS] NAME[:TAG]
OPTIONS说明:
--disable-content-trust :忽略镜像的校验,默认开启
上传本地镜像myapache:v1到镜像仓库中。docker push myapache:v1
7、docker search
docker search : 从Docker Hub查找镜像docker search [OPTIONS] TERM
OPTIONS说明:
--automated :只列出 automated build类型的镜像;
--no-trunc :显示完整的镜像描述;
-s :列出收藏数不小于指定值的镜像。
从Docker Hub查找所有镜像名包含java,并且收藏数大于10的镜像docker search -s 10 java
8、docker cp
docker cp :用于容器与主机之间的数据复制
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
OPTIONS说明:
-L :保持源目标中的链接
将主机/www/docker目录拷贝到容器96f7f14e99ab中,目录重命名为www。docker cp /www/docker 96f7f14e99ab:/www
将容器96f7f14e99ab的/www目录拷贝到主机的/tmp目录中。docker cp 96f7f14e99ab:/www /tmp/
9、docker kill
docker kill :杀掉一个运行中的容器。docker kill [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS说明:
-s :向容器发送一个信号
docker kill -s KILL nginx
杀掉运行中的容器nginx
1.显示所有运行中的容器
docker ps
2.显示所有容器
docker ps -a
3.进入容器的命令
docker exec -it 容器id /bin/bash
1.停止全部运行中的容器:
docker stop $(docker ps -q)
2.启动全部运行中的容器:
docker start $(docker ps -q)
3.删除全部运行中的容器:
docker rm $(docker ps -aq)
4.停止并删除容器
docker stop $(docker ps -q) & docker rm (docker ps -aq)
5.删除所有的镜像
docker rmi $(docker images)