docker常用命令

发布时间 2023-05-20 01:09:31作者: 乐之者v

docker常用命令

help命令

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

比如:

docker ps --help

查看容器

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

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

显示结果类似如下,

CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS                  PORTS                       NAMES
8e5a3a27b546        tomlin/clickhouse:latest   "bash"                    3 months ago        Up 2 weeks                                          clickhouse-server
c0aacbsds876        5fssakid1579                "/bin/bash"              4 months ago        Up 4 months                                         determined_mcclintock
5b79casdw6ed        5f7schjd4684                "bash"                   4 months ago        Up 4 months                                         fervent_beaver
f1d1dwtyq952        vmware/harbor-db:v1.3.0     "/usr/local/bin/do..."   18 months ago       Up 9 months (healthy)   3306/tcp                    harbor-db
f8a3e0was306        vmware/harbor-log:v1.3.0    "/bin/sh -c /usr/l..."   18 months ago       Up 9 months (healthy)   127.0.0.1:1514->10514/tcp   harbor-log

具体含义:

**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 下载公共镜像。比如 ubuntu:15.10 就是一个IMAGE 。
COMMAND:就是启动容器时运行的命令。

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

示例:

docker run ubuntu:15.10 /bin/echo "Hello world"

启动容器:

docker start 

格式如下:

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

CONTAINER:可以用CONTAINER_ID,也可以用NAMES。可以根据docker ps -a命令的结果拿到。
COMMAND: 启动容器时运行的命令。

进入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命令拿到。

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

示例如下,打开容器clickhouse-server,其中bash是启动容器时运行的命令:

docker exec -it clickhouse-server bash

从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:

systemctl start docker

删除docker容器:

docker rm 容器ID

检查docker的安装是否正确:

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

参考资料:

https://www.runoob.com/docker/docker-command-manual.html