文章目录

  • 前言
  • 一、镜像操作
  • 1.1 镜像的组成
  • 1.2 镜像的操作
  • 二、容器操作
  • 2.1 容器的基本操作
  • 2.2 容器操作的小结
  • 总结



前言

前面我们学习了Docker的基本定义以及如何安装 Docker, 接下来我们对Docker的基本操作进行了解。上篇文章可点击 初始Docker


一、镜像操作

1.1 镜像的组成

  • 镜像的名称一般分为两个部分组成:[repository]:[tag]
  • 在没有指定tag时,默认就是 latest, 代表最新版本的镜像

当你想在Docker上使用某个镜像的时候,你可以通过 DockerHub(相当于一个Docker的仓库)去了解它的相关知识,比如如何拉取呀,如何使用呀。

docker Grafana配置为中文 docker中文教程_docker Grafana配置为中文


docker Grafana配置为中文 docker中文教程_运维_02

1.2 镜像的操作

docker Grafana配置为中文 docker中文教程_运维_03


通过上图,我们基本上就可以了解到镜像的一些基本操作

  • docker build: 它可以帮助我们构建一些自定义镜像。而Dockerfile 就相当于一个文本文件,其中包含一个个的指令,这些指令是用来说明执行什么来构建镜像
  • docker images: 查看你已经拉取的镜像
  • docker Grafana配置为中文 docker中文教程_docker_04

  • docker rmi 镜像名称或镜像 id: 删除对应的镜像
docker rmi nginx:latest

docker Grafana配置为中文 docker中文教程_docker_05

Tips: 当我们平时使用过程中,突然忘记某个命令的参数时,help 命令就十分有帮助了

docker 命令 --help

下面是删除镜像的帮助文档

docker Grafana配置为中文 docker中文教程_docker_06

  • docker save [Options] IMAGE: 保存一个镜像为一个压缩包
    Options: 可以写 -o 表示对应的输出文件名,Image 表示你要打包的一个镜像
docker save -o nginx.tar nginx:latest

docker Grafana配置为中文 docker中文教程_容器_07

  • docker load: 加载压缩包为镜像
    当你把一个镜像打包为一个压缩包后,你可以通过 dokcer load 命令在其他服务的docker上加载你这个镜像。
docker load -i nginx.tar

docker Grafana配置为中文 docker中文教程_容器_08

  • dokcer push:推送镜像到服务
  • docker pull: 从服务拉取镜像

二、容器操作

2.1 容器的基本操作

从上面,我们知道如何去拉取,加载,保存,删除镜像。但是镜像只是一个载体,我们只有把镜像跑起来成为容器,我们才能真正的使用它。

下面是容器的基本你操作:

docker Grafana配置为中文 docker中文教程_nginx_09

  • docker run: 将镜像运行为容器
    我们可以看到下面是通过 help 文档去查询它的相关参数,可以看到参数是十分的多,且理解难度也比较大。这时候,我们可以针对具体镜像的运行去 Doker Hub上查询具体的使用实例。

    下面是 Docker Hub 上 关于 Nginx的多个使用实例。

    但这看上去还是有点难度的,我们可以通过下面命令里具体参数对 docker run 有进一步了解
$ docker run --name some-nginx -d -p 8080:80 nginx
  • –name: 给容器起一个名字,比如 some-nginx
  • -d: 后台运行容器
  • -p: 将宿主机端口与容器端口映射,冒号左侧是宿主机端口,右侧是容器端口
  • nginx: 镜像名称
  • docker stop 容器id : 停止容器
-- 其中-t可以不加,它表示多久后关闭
docker stop -t 12 cc4064feb479

docker Grafana配置为中文 docker中文教程_docker Grafana配置为中文_10

  • docker start 容器id:开启某个容器
  • docker ps : 查看正在运行的容器

    它还有一些其他的参数,可通过 docker ps --help 自行查阅学习

docker Grafana配置为中文 docker中文教程_运维_11

  • dokcer logs 容器id: 查询对应容器的日志
docker logs -f cc4064feb479

docker Grafana配置为中文 docker中文教程_docker_12

  • doccker exec -it [容器名] [要执行的命令]
    进入容器内部,执行一个命令
docker exec -it mn1 bash

docker Grafana配置为中文 docker中文教程_docker Grafana配置为中文_13


docker exec: 进入容器内容部,执行一个命令

-it: 给当前进入的容器创建一个标准输入,输出终端,允许我们与容器交互

mn1: 要进入容器的名称

bash: 进入容器后执行的命令,bash 是一个linux终端交互命令

  • docker rm [-f] 容器id: 删除容器
docker rm -f cc4064feb479

docker Grafana配置为中文 docker中文教程_运维_14

2.2 容器操作的小结

  1. docker run 镜像: 运行某个容器
  • –name: 指定容器名称
  • -p: 指定端口映射
  • -d: 让容器再后台运行
  1. 查看容器日志的命令:
  • docker logs
  • 添加 -f 参数可以持续查看日志
  1. 查看容器状态:
  • docker ps
  • -a 参数可以查看所有容器 (包括没有运行的)
  1. 删除容器
  • docker rm
  • -f 参数可以强制删除正在运行的容器
  1. 停止容器
  • docker stop
  1. 进入容器
  • docker exec -it [容器名] [要执行的命令]

总结

希望通过这篇文章你能了解到镜像和容器的基本操作,其实记住命令并不是最关键的。重要的是你要学会用 – help 去了解这些操作的参数,在帮助文档内容较多且无法理解的情况下,我们可以通过 docker hub 去查找相关的应用实例。如何去使用固然重要,但是学习的方法和途径才是更重要的过程。