Docker常用命令

# 查看命令记录
docker history

# 查看本地已有的镜像
# -a 列出所有镜像
# -q 只显示镜像ID
docker images

# 删除指定的镜像
docker rmi image1 imge2 imge3

# 删除本地所有镜像
docker rmi `docker images -aq`

# 构建镜像
# --no-cache,忽略构建缓存
# -t TAG,在构建时指定镜像标签
docker build -t TAG 

# 给镜像打标签
docker tag CONTAINER TAG

# 推送镜像到Registry
docker push

# 从镜像仓库下载镜像
docker pull CONTAINER TAG

# 将构建的镜像保存到文件中
docker save

# 装载保存到文件的镜像
docker load

# 创建并执行容器
# -i 开启容器的STDIN
# -t 为容器创建一个伪tty终端
# --restart=OPTS,指定重启条件,always 无论容器退出码均重启;on-failure:N 当容器退出码非0时重启,最多试N次
# --network=OPTS, none表示容器无网络,只能访问回环;host表示容器和宿主机共享网络命名空间;bridge表示为容器创建独立的网络环境
docker run -it ubuntu bash

# --name CON_NAME,指定容器名称
docker run -it --name darren_ubuntu_con ubuntu bash

# -d 后台运行容器,同时执行某个任务
docker run --name darren_ubuntu -d ubuntu bash -c "while true; do echo hello world; sleep 1; done"

# 获取容器的日志, 
# -f 可以动态更新日志
# --tail N 指定查看日志的最后N条
# -t 查看时携带时间戳
docker logs CON_NAME | CON_ID

# 查看容器内的进程
docker top CON_NAME | CON_ID

# 查看容器的统计信息
docker stats CON_NAME1|CON_ID1 [[ CON_NAME2|CON_ID2 ] ... [CON_NAMEn | CON_IDn]] 

# 审查一个容器的详细信息
docker inspect CON_NAME|CON_ID

# 在容器中执行命令
# -d 可以非交互式地执行命令
docker exec CON_NAME|CON_ID YOUR_CMD YOUR_ARGS 

# 创建一个容器而不启动它,命令执行后返回新创建的容器ID
docker create 

# 通过容器名称或容器ID启动某个容器
docker start CON_NAME | CON_ID

# 重启一个容器
docker restart CON_NAME | CON_ID

# 列出当前运行中的容器
# -a 列出所有容器
# -l 列出最近一次的容器
# -q 列出容器时只显示容器ID
docker ps

# 关闭一个容器,向容器进程发送 SIGTERM 信号
docker stop CON_NAME|CON_ID

# 杀死一个容器,向容器进程发送 SIGKILL 信号
docker kill CON_NAME|CON_ID

# 暂停容器
docker pause [OPTIONS] CONTAINER [CONTAINER...]

# 恢复容器
docker resume [OPTIONS] CONTAINER [CONTAINER...]

# 删除一个容器
docker rm CON_NAME|CON_ID

# 删除所有容器
docker rm `docker ps -aq`

# 附着到某个正在运行的容器上,不能附着到已停止的容器上
docker attach CON_NAME | CON_ID

# 查看容器的端口映射情况,显示容器PORT端口映射到的宿主机端口
docker port CON_ID|CON_NAME PORT

# 自己创建容器网络
docker network create -d bridge NETWORK

# 创建卷
docker volume create VOLUME_NAME

#
docker volume prune

docker run可以创建2种类型的容器:

  1. 交互型容器:运行在前台,有指定的交互控制台。当创建容器的终端关闭,或容器内使用exit命令,或docker stopdocker kill命令将会使容器变为停止状态
  2. 后台型容器:运行于后台,创建后于创建它的终端无关,只能通过docker stopdocker kill命令将其关闭。

docker run实现文件映射

  1. docker run -v vol:/app IMAGE - 挂载VOLUME
  2. docker run -v /home/user/:/app IMAGE - bind mounts,将宿主机的/home/user/挂载到容器的/app
  3. docker run -tmpfs /app IMAGE - 将宿主机的内存或交换分区挂载到容器中。
原文地址:https://www.cnblogs.com/zyon/p/11256437.html