Docker 常用基本操作

157 阅读2分钟

一、info|version

# docker 系统信息
docker info 

# 显示 docker 版本信息
docker version
docker -v

官方参考:docker commandline

二、镜像操作

官方的容器景象仓库hub.docker

1.拉取hub.docker镜像到本地

docker pull  NAME[:TAG]

# example
docker pull nginx 
docker pull nginx:1.22.0

2.查看本地已经拉取的镜像

docker images [OPTIONS] [REPOSITORY[:TAG]]

# example
docker images 
docker -q images  #只显示镜像id
docker images nginx
docker images nginx:1.22.0

3.从hub.docker查找镜像

docker search [OPTIONS] TERM

# example
docker search java

docker search -f stars=10 java

4.删除镜像

docker rmi [OPTIONS] IMAGE [IMAGE...]
-f :强制删除

#example
docker rmi nginx
docker rmi -f nginx 
docker rmi `docker images -q` # 删除所有镜像

三、容器生命周期管理

1. 创建一个新容器并运行一个命令

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
  • -d:  后台运行容器,并返回容器ID;
  • -i:  以交互模式运行容器,通常与 -t 同时使用;
  • -t:  为容器重新分配一个伪输入终端,通常与 -i 同时使用;
  • -p:  指定端口映射,格式为:主机(宿主)端口:容器端口
  • -e username="ritchie":  设置环境变量;
  • --name="nginx-lb":  为容器指定一个名称;
  • -volume , -v: 绑定一个卷
docker run -it ubuntu /bin/bash
docker run -i -d ubuntu /bin/bash

docker run --name mynginx -p 80:80 -d nginx 

2.查看本级的容器列表

# 查看正在运行的容器
docker ps 
# 查看所有的容器(包括已经停止的)
docker ps -a 

3.docker start|stop|restart

  • docker start :启动一个或多个已经被停止的容器

  • docker stop :停止一个运行中的容器

  • docker restart :重启容器

#example
docker start mynginx
docker stop mynginx
docker restart mynginx

4.删除一个或多个容器。

docker rm [OPTIONS] CONTAINER [CONTAINER...]

#example
docker rm mynginx

docker rm -f mynginx

5.在运行的容器中执行命令

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

OPTIONS说明:

  • -d : 分离模式: 在后台运行
  • -i : 即使没有附加也保持STDIN 打开
  • -t : 分配一个伪终端
#example
docker exec -it 7aba /bin/bash 

6.获取容器的日志

docker logs [OPTIONS] CONTAINER

OPTIONS说明:

  • -f : 跟踪日志输出
  • --since : 显示某个开始时间的所有日志
  • -t : 显示时间戳
  • --tail : 仅列出最新N条容器日志
docker logs -f mynginx

#查看容器mynginx从2016年7月1日后的最新10条日志。
docker logs --since="2016-07-01" --tail=10 mynginx

7. docker inspect 获取容器/镜像的元数据。

docker inspect nginx

8.docker top 查看容器中运行的进程信息

docker top nginx

9.docker port :列出指定的容器的端口映射

docker port nginx