1、docker 命令
列表Docker CLI命令
docker
docker container --help
显示Docker版本和信息
docker --version
docker version
docker info
运行Docker镜像hello-world
docker run hello-world
列出所有image镜像:
docker image ls
docker images
列出所有容器。如果它仍在运行,您将不需要–all选项:
docker container ls
docker container ls --all
docker container ls -aq
或者是
docker ps 查看正在运行的容器
docker ps -a 查看所有的容器
开启关闭重启容器
1、docker start 容器ID或容器名 启动一个已经停止的容器
2、docker stop 容器ID或容器名 停止一个正在运行的容器
参数 -t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态 docker stop
-t=60 容器ID或容器名
3、docker kill 容器ID或容器名 直接关闭容器
stop和kill的主要区别:stop给与一定的关闭时间交由容器自己保存状态,kill直接关闭容器
4、docker restart 容器ID或容器名 不管容器是否启动,直接重启容器
参数 -t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态
删除镜像image
docker rmi {IMAGE ID}
删除容器docker
docker rm {CONTAINER ID}
进入容器
docker exec -it 容器名称/ID 终端
例子: 进入ID为0d15561b9f10的容器
docker exec -it sinn-server bash
或docker exec -it 0d15561b9f10 /bin/bash
退出容器,执行exit命令
镜像重命名
docker tag 原镜像tag 新镜像tag
查看镜像创建历史
docker history 镜像
镜像归档
docker save -o 归档文件的名称 镜像名称
基于归档文件创建镜像
docker import 归档文件 新镜像tag
文件拷贝
docker cp 需要拷贝的文件或者目录 容器名称:容器目录
docker cp 容器名称:容器目录 需要拷贝的文件或者目录
目录挂载
我们可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。
创建容器 添加-v参数 后边为 宿主机目录:容器目录
docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=app ubuntu
远程仓库镜像管理
命令如下:
- 登录远程镜像仓库: docker login 用户信息 仓库地址 如果未指定镜像仓库地址,则默认为官方仓库 Docker Hub
#登录到官方Docker Hub仓库
docker login -u 用户名 -p 密码
#登录到阿里云docker仓库
docker login --username=用户名 registry.cn-hangzhou.aliyuncs.com
- 拉取镜像:docker pull 镜像
docker pull registry.cn-hangzhou.aliyuncs.com/sessionboy/sinn:v1
- 推送镜像: docker push 镜像
docker push registry.cn-hangzhou.aliyuncs.com/sessionboy/sinn:v1
- 搜索镜像: docker search 镜像名
# 从官方Docker Hub仓库搜索node镜像
docker search node
其他的一些命令及参数解释
-i : 表示允许我们对容器内的STDIN进行交互
-t : 表示在新容器内指定一个伪终端或终端
/bin/bash:这将在容器内启动bash shell
-d : 表示告诉docker运行容器在后台模式运行
-p : 表示通知docker所需要的网络端口映射从主机映射到容器内,-p 1234:3306 ,这样的映射,我们外界访问是访问1234端口
查看日志
docker logs -f -t --since="2018-11-11" --tail=10 容器ID或容器名字: 看容器中的日志记录
-f : 查看实时日志
-t : 查看日志产生的日期
–since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。
–tail=10 : 查看最后的10条日志。
列出端口映射或容器的特定映射
docker port CONTAINER [PRIVATE_PORT[/PROTO]]:列出端口映射或容器的特定映射
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b650456536c7 busybox:latest top 54 minutes ago Up 54 minutes 0.0.0.0:1234->9876/tcp, 0.0.0.0:4321->7890/tcp test
$ docker port test
7890/tcp -> 0.0.0.0:4321
9876/tcp -> 0.0.0.0:1234
$ docker port test 7890/tcp
0.0.0.0:4321
$ docker port test 7890/udp
2014/06/24 11:53:36 Error: No public port '7890/udp' published for test
$ docker port test 7890
0.0.0.0:4321
查看容器中运行的进程信息
docker top CONTAINER : 查看images容器的进程
获取容器/镜像的元数据
docker inspect [OPTIONS] images : 查看容器的底层信息,它会返回一个JSON文件记录docker容器的配置和状态信息。
OPTIONS说明:
-f,–format string:指定返回值的模板文件。
-s,–size:显示总的文件大小。
–type string:为指定类型返回JSON。
停止关闭全部容器
停用全部运行中的容器:
docker stop $(docker ps -q)1
删除全部容器:
docker rm $(docker ps -aq)1
一条命令实现停用并删除容器:
docker stop $(docker ps -q) & docker rm $(docker ps -aq)