Docker常用操作速查表

Docker

文章目录

  • Docker
    • [1. 使用逻辑](#1. 使用逻辑)
    • [2. 镜像](#2. 镜像)
      • [`docker search`](#docker search)
      • [`docker pull`](#docker pull)
      • [`docker images`](#docker images)
      • [`docker rmi`](#docker rmi)
    • [3. 容器](#3. 容器)
      • [`docker run`](#docker run)
      • [`docker ps`](#docker ps)
      • [`docker stop`](#docker stop)
      • [`docker start`](#docker start)
      • [`docker rename`](#docker rename)
      • [`docker logs`](#docker logs)
    • [4. 容器-->镜像](#4. 容器-->镜像)
      • [`docker commit`](#docker commit)
    • [5. 其他](#5. 其他)
      • [`docker save/load`](#docker save/load)
    • [6. 构建](#6. 构建)
      • [`docker build`](#docker build)
      • Dockerfile
        • [1. FROM](#1. FROM)
        • [2. LABEL](#2. LABEL)
        • [3. ENV](#3. ENV)
        • [4. RUN / CMD](#4. RUN / CMD)
        • [5. WORKDIR / USER](#5. WORKDIR / USER)
        • [6. COPY / ADD](#6. COPY / ADD)
        • [7. VOLUME / EXPOSE](#7. VOLUME / EXPOSE)
        • [8. ARG](#8. ARG)
        • [9. STOPSIGNAL](#9. STOPSIGNAL)

1. 使用逻辑

docker pull docker run/docker create docker commit docker push Image Container Remote Image

注: 使用时将镜像简单认为是一个操作系统, 实际上不是操作系统, 是一个轻量的隔离环境

2. 镜像

  • function: 检索docker hub上的镜像
  • connection: #Remote

docker pull

  • function: 从docker hub上拉取镜像到本地
  • connection: Remote --> Image

docker images

  • function: 列出本地镜像

  • connection: #Image

docker rmi

  • function: 删除指定的本地镜像
  • connection: #Image

3. 容器

docker run

  • function: 打包镜像成容器, 加入容器列表并运行容器
  • connection: Image --> Container

docker ps

  • function: 查看容器列表
  • connection: #Container
  • expansion: docker ps -a 列出所有容器列表, 包括没运行的

docker stop

  • function: 退出运行容器列表中的一个容器, 但不会在容器列表中删除
  • connection: #Container

docker start

  • function: 运行容器列表中的一个容器
  • connection: #Container

docker rename

  • function: 重命名
  • connection: #Container

docker logs

  • function: 查看某容器的日志
  • connection: #Container

4. 容器-->镜像

docker commit

  • function: 从容器的改变中创建镜像
  • connection: Container-->Image

5. 其他

docker save/load

  • function: 镜像<--->Tar压缩包

6. 构建

可以将构建过程虚拟的认为成新建一个操作系统 (实际上是轻量化的隔离环境)

docker build

  • function: 将项目构建成镜像

  • arguments:

    • -f: 指定dockerfile

    • -t: 指定镜像名和tag
      举例:

      docker build -f Dockerfil -t myimg:v0.1

命令安装的环境和依赖不会出现在自己的系统中 但是会出现在容器中, 因为是一个隔离的环境

Dockerfile

1. FROM

基础镜像: 也就是dockerhub上配好的镜像, 比如JDK, python, Ubuntu等基础环境

2. LABEL

附加到Image上的元数据

3. ENV

键值格式设定环境变量

4. RUN / CMD

RUN在构建镜像的时候执行的命令行指令, 可以理解为镜像就是一个全新系统, 你想在上面装什么环境

CMD就是运行容器时执行的命令行指令

5. WORKDIR / USER

指定RUN,CMD,ENTRPOINT,COPY,ADD指令的工作目录 / 用户UID

6. COPY / ADD

在构建镜像的时候, 把项目文件中的哪些拷贝到镜像中, ADD就是多一个自动解压的过程

7. VOLUME / EXPOSE

指定容器运行时的卷和暴露端口

8. ARG

构建过程中的定义的变量

9. STOPSIGNAL

用于通知容器终止的系统调用信号

相关推荐
MediaTea8 分钟前
Python 第三方库:plotnine(类 ggplot 的 Python 数据可视化库)
开发语言·python·信息可视化
MyFreeIT18 分钟前
Docker Manual
运维·docker·容器
路边草随风34 分钟前
python 调用 spring ai sse mcp
人工智能·python·spring
Dr.Kun1 小时前
【鲲码园Python】基于pytorch的鸟品种分类系统(25类)
pytorch·python·分类
是有头发的程序猿2 小时前
Python爬虫实战:面向对象编程在淘宝商品数据抓取中的应用
开发语言·爬虫·python
萑澈2 小时前
Windows系统Anaconda/Miniconda的安装、配置、基础使用、清理缓存空间和Pycharm/VSCode配置指南
python
修己xj2 小时前
Linux系统离线安装Docker完整指南
docker
Onebound_Ed2 小时前
Python爬虫进阶:面向对象设计构建高可维护的1688商品数据采集系统
开发语言·爬虫·python
阿蔹2 小时前
JavaWeb-Selenium 配置以及Selenim classnotfound问题解决
java·软件测试·python·selenium·测试工具·自动化
哈哈哈笑什么3 小时前
高并发分布式Springcloud系统下,使用RabbitMQ实现订单支付完整闭环的实现方案(反向撤销+重试+补偿)
分布式·spring cloud·rabbitmq