docker常用命令

docker常用命令

help命令

  • 通过help命令,来查看各种docker命令的详细信息。
    格式:
任意docker命令 --help

比如:

docker ps --help

启动docker:

systemctl start docker

如果没有启动 docker,会提示:

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

查看docker容器

  • 显示所有docker容器:
docker ps -a   

-a :显示所有的容器,包括未运行的。
-f :根据条件过滤显示

显示结果类似如下,

CONTAINER ID   IMAGE     COMMAND       CREATED         STATUS         PORTS     NAMES
959ab10dcc16   centos    "/bin/bash"   9 minutes ago   Up 3 seconds             my_centos

具体含义:

CONTAINER ID:就是容器ID。这个经常会用到。
IMAGE: 使用的镜像。
COMMAND: 启动容器时运行的命令。
CREATED: 容器的创建时间。
STATUS: 容器状态。状态有7种:
 created(已创建)、restarting(重启中)、running 或 Up(运行中)、removing(迁移中)、paused(暂停)exited(停止)、dead(死亡)
NAMES:就是容器的名称。这个也经常会用到。
  • 列出所有正在运行的容器信息。
docker ps     

创建容器:

基于IMAGE 镜像,创建docker容器。

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

docker run 表示创建一个容器。
IMAGE :docker 首先从本地主机上查找IMAGE镜像 是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。比如 centos 就是一个IMAGE 。
COMMAND:就是启动容器时运行的命令。也可以不指定COMMAND。

#Options参数说明
--name="名字"           指定容器名字
-d                     后台方式运行
-it                    使用交互方式运行,进入容器查看内容
-p                     指定容器的端口
	-p ip:主机端口:容器端口  配置主机端口映射到容器端口
	-p 主机端口:容器端口(常用)
	-p 容器端口
-P                     随机指定端口
-e		       环境设置
-v		       目录映射,容器目录挂载到宿主机目录,格式:<host目录>:<容器目录>

示例:

 docker run -it centos /bin/bash

安装centos镜像,这样就可以在 docker的centos镜像里,使用linux系统了。

启动容器:

docker start 

格式如下:

docker start [OPTIONS] CONTAINER [CONTAINER...]

CONTAINER:可以用CONTAINER_ID(也就是容器ID),也可以用NAMES(也就是容器名称)。
COMMAND: 启动容器时运行的命令。
CONTAINER_ID、COMMAND和NAMES, 都可以通过 docker ps -a 拿到

进入docker容器:

命令格式如下:

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

常用的命令如下:

docker exec -it CONTAINER COMMAND

OPTIONS参数解释如下:

-i :即使没有附加也保持STDIN 打开
-t :分配一个伪终端
CONTAINER:可以用CONTAINER_ID,也可以用NAMES。可以根据docker ps -a命令的结果拿到。
COMMAND: 启动容器时运行的命令。同样可以通过docker ps -a命令拿到。

这个命令表示进入容器终端,并且的保留为容器终端的输入形式。

示例如下,打开CONTAINER_ID(就是容器id) 为 959ab10dcc16 的容器,其中/bin/bash 是COMMAND(就是启动容器时运行的命令):

docker exec -it 959ab10dcc16 /bin/bash

查看日志

如果容器启动不了,可以查看日志,找下失败的原因。

 docker logs [OPTIONS] CONTAINER

Options:

-f   :显示额外的详细信息提供给日志跟踪日志输出显示
-t   :显示时间戳
--tail 数字    :要显示的倒数第几条日志条数

示例:

docker logs -tf 容器id

查看进程

查看容器中进程信息

docker top 容器id

镜像

列出本地主机上的镜像

命令:

docker images 

结果的属性含义如下:

    REPOSITORY:表示镜像的仓库源

    TAG:镜像的标签

    IMAGE ID:镜像ID

    CREATED:镜像创建时间

    SIZE:镜像大小

搜索镜像

使用 docker search 命令来搜索镜像。

示例:

docker search ubuntu

下载镜像

docker pull

示例:

docker pull ubuntu

删除镜像

docker rmi ubuntu

获取容器在宿主机的日志路径

可以通过 docker inspect 命令定位容器文件系统在宿主机上对应的目录。

获取容器在宿主机的日志路径

docker inspect --format='{{.LogPath}}' $CONTAINER_ID

从docker容器复制文件到宿主机:

docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH

CONTAINER:SRC_PATH表示容器的名称以及路径
注意,容器CONTAINER和路径SRC_PATH中间有一个冒号。
示例如下,表示将容器clickhouse-server的/tmp/test_cp.csv文件,复制到宿主机的/tmp/test_cp.csv

docker cp clickhouse-server:/tmp/test_cp.csv /tmp/test_cp.csv
  • 从宿主机复制文件到docker容器:
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

示例如下,表示主机的/tmp/test_cp.csv,复制到容器clickhouse-server的/tmp/test_cp.csv文件。

docker cp /tmp/test_cp.csv clickhouse-server:/tmp/test_cp.csv

退出docker容器:

exit

其他:

删除docker容器:

docker rm 容器ID

检查docker的安装是否正确:

docker info 
  • 查看docker容器的基本信息:
docker inspect  CONTAINER

参考资料:

https://www.runoob.com/docker/docker-command-manual.html
https://blog.csdn.net/weixin_45698637/article/details/124213429

posted on 2023-05-20 01:01  乐之者v  阅读(73)  评论(0编辑  收藏  举报

导航