Docker

Docker教程

一、Docker三要素:

  1. image \(\rightarrow\) class
  2. container \(\rightarrow\) instance
  3. repository \(\rightarrow\) 存放image的场所,官方registry称为Docker Hub

二、安装

步骤

Note:Set up the repository

阿里云镜像加速

三、Docker常用命令

3.1 帮助启动类命令

1
2
3
4
5
6
7
8
systemctl start docker  # 启动docker
systemctl stop docker # 停止docker
systemctl restart docker # 重启docker
systemctl status docker # 查看docker状态
systemctl enable docker # 开机启动
docker info # 查看docker概要信息
docker --help # 查看docker总体帮助文档
docker 具体命令 --help # 查看docker命令帮助文档

3.2 镜像命令

  • docker images [OPTIONS]:列出本地主机上的镜像
    • 各个选项说明: REPOSITORY:表示镜像的仓库源 TAG:镜像的标签版本号 IMAGE ID:镜像ID CREATED:镜像创建时间 SIZE:镜像大小 同一仓库源可以有多个 TAG版本,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像
    • OPTIONS说明:
      • -a :列出本地所有的镜像(含历史映像层)
      • -q :只显示镜像ID。
  • docker search [OPTIONS] 镜像名字:搜索镜像
    • OPTIONS说明:
      • --limit : 只列出N个镜像,默认25个 e.g. docker search --limit 5 redis
  • docker pull 某个XXX镜像名字:下载镜像
    • docker pull 镜像名字:[TAG] 没有TAG就是最新版等价于docker pull 镜像名字:latest
  • docker system df:查看镜像/容器/数据卷所占的空间
  • docker rmi 某个XXX镜像名字ID:删除镜像
    • 删除单个 docker rmi -f 镜像ID
    • 删除多个 docker rmi -f 镜像名1:TAG 镜像名2:TAG
    • 删除全部 docker rmi -f $(docker images -qa) ### 3.3 容器命令
  • docker run [OPTIONS] IMAGE [COMMAND] [ARG...]:新建+启动容器
    • OPTIONS说明:有些是一个减号,有些是两个减号
      • --name="容器新名字" 为容器指定一个名称;
      • -d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行);
      • 启动交互式容器(前台有伪终端,等待交互)
        • -i:以交互模式运行容器,通常与 -t 同时使用;(interactive)
        • -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;(terminal)
        • e.g. docker run -it ubuntu /bin/bash: 使用镜像centos:latest以交互模式启动一个容器,在容器内执行/bin/bash命令 /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。要退出终端,直接输入 exit:
      • -P: 随机端口映射,大写P
      • -p: 指定端口映射,小写p
  • docker ps [OPTIONS]:·列出当前所有正在运行的容器
    • OPTIONS说明
      • -a:列出当前所有正在运行的容器+历史上运行过的
      • -l:显示最近创建的容器。
      • -n:显示最近n个创建的容器。
      • -q:静默模式,只显示容器编号。
  • 退出容器 关系 指向 进入正在运行的容器并以命令行交互 ·两种退出方式 ·exit ·run进去容器,exit退出,容器停止 ·ctrl+p+q ·run进去容器,ctrl+p+q退出,容器不停止 ·启动已停止运行的容器 ·docker start 容器ID或者容器名
  • 重启容器 ·docker restart 容器ID或者容器名 ·停止容器 ·docker stop 容器ID或者容器名 ·强制停止容器 ·docker kill 容器ID或容器名 ·删除已停止的容器 ·docker rm 容器ID ·一次性删除多个容器实例 ·docker rm -f $(docker ps -a -q) ·docker ps -a -q | xargs docker rm

Reference:

尚硅谷Docker实战教程 JJacobb


Docker
http://chenxindaaa.com/Programming/Docker/Docker/
Author
chenxindaaa
Posted on
May 2, 2023
Licensed under