0%

Docker 常用命令

指令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 列出所有容器 ID
docker ps -aq 或 docker ps -a

# 停止所有容器
docker stop $(docker ps -aq)

# 停止单个容器
docker stop 要停止的容器名

# 删除所有容器
docker rm $(docker ps -aq)

# 删除单个容器
docker rm 要删除的容器名

# 删除所有的镜像
docker rmi $(docker images -q)

指定开机启动

1
docker update --restart=always <容器id 或 容器别名>

打开容器命令行

1
2
3
4
docker exec -it <容器id 或 容器别名> /bin/bash

# 执行容器内脚本
docker exec -it <容器id 或 容器别名> /bin/bash <脚本路径>/xxx.sh

拷贝文件

不管启动与否都可以拷贝

命令:docker cp <image_id>:<target_dir_path> <local_dir_path>

  • image_id : 镜像 id 可以通过 docker ps -a 查看,可以简写(取 id 前几位)
  • target_dir_path : docker 中目标文件夹路径
  • local_dir_path : 拷贝到本地的路径
1
2
3
4
5
6
7
8
# 示例 
# 查看镜像 `741c99bf26bb` 是镜像id
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
741c99bf26bb vanas/tokenmanager "/bin/sh -c 'circusd…" 3 minutes ago Restarting (127) 14 seconds ago vanastokenmanager_web1_1

# 拷贝 docker 镜像下 /app 到本地的 /Users/alexliu/app 目录
$ docker cp 74:/app /Users/alexliu/app