• docker常用命令,学习笔记


    - 常用命令

    https://docs.docker.com

    • images
    > docker images  # 查看本地镜像
    > docker images -a # 查看所(含中间镜像层)
    > docker images -q # 只看ID
    > docker images -qa # 所有ID
    > docker images --help # 帮助
    
    • history
    > docker history ID  # 查看镜像ID的更新历史
    
    • docker
    > docker --help # 帮助
    > docker version # 版本
    > docker info # 详细信息
    
    • save Save one or more images to a tar archive (streamed to STDOUT by default)
    > docker save yzn-base > yzn-base.tar  # 将镜像保存成压缩文件
    
    • load Load an image from a tar archive or STDIN
    > docker load < busybox.tar.gz  # .tar.gz
    > docker load --input fedora.tar  # .tar
    
    • rm、rmi 删除
    > docker rm <container name>  # 删除容器
    > docker rmi <image name>  # 删除镜像
    > docker rmi -f hello-world:latest # 强制删除镜像
    
    • commit 提交
    > docker commit <container name> [image name]  # 生成镜像
    > docker commit -m "This is yzn base env with cuda9.0 and conda-pytorch " -a "yzn" yzn-base1 siat123/yzn-base2  # 生成镜像。-m 是message,-a 是username,使用容器yzn-base1生成镜像yzn-base2
    
    • run 运行
    > docker run <image ID>  # 运行镜像,生成容器
    
    • pull 拉取
    > docker pull siat123/yzn-base1:latest   # 不加tag,默认拉取latest版本
    
    • push 推送 至远程仓库
    > docker push siat123/yzn-base2  # 默认推送latest版本
    

    - 如何理解镜像和容器的关系?

    1. 容器与镜像的关系类似于面向对象编程中的对象与类;
    2. 镜像(image)是类,容器(container)是对象,一个镜像可以产生多了容器。
    3. 容器通过镜像启动,镜像启动之后自动生成容器。
    4. 镜像像一张系统安装光盘(可盘后不能更改),容器是安装好的系统。
    5. 当镜像的容器还存在时,是不能删除镜像的。

    - docker的5个使用步骤?:

    1. 应用程序有很多组件,拆分它们;
    2. 选择成熟的基础镜像;
    3. 添加安全管理;
    4. 添加代码;
    5. 配置测试部署。

    - Docker的4个组成?:

    1. docker Client客户端
    2. Docker Daemon守护进程
    3. Docker Image镜像
    4. Docker Container容器
    • 我们通过客户端写命令,然后客户端将命令发送给守护进程,守护进程再将命令执行的结果返回给客户端,这就使我们能通过命令查看执行结果,镜像就是容器的源代码,容器通过镜像启动,使用仓库来保存用户构建的镜像,仓库分为共有和私有。

    - 系统学习docker的知识总结?

    1. 学习链接:https://www.w3cschool.cn/use_docker/use_docker-phr127
    2. Docker 相关概念:通过镜像生成有端口的容器
    • 镜像运行之后生成容器,当需要与容器立即交互时,须给容器分配一个虚拟终端(-t 命令实现),通过分配的虚拟容器IP和端口(8000)实现对容器的交互。
    • 容器虚拟IP的查看方法
    3. docker 的网络配置:将实体机的端口映射到容器端口
    > docker run -d -p 5000:22 -p 18888:8888 zys:common
    
    • 实体机 5000 端口映射到容器 22 端口, 同时 18888 端口映射到容器 8888 端口,有了端口之后就可以使用ssh登录到容器了。
    4. docker 的分区挂载和数据卷:
    • 需要挂在的原因是容器中的文件系统是独立的, 一旦容器被删除, 则文件系统也会被删除。
    • 将实体机的目录(前面)挂在到容器的文件系统文件(后面)下
    > docker run -d -p 5000:22 -v /home/zys/temp:/root/volumn zys:common
    
    5. docker 的镜像服务器
    • 这里说的镜像服务器(docker-registry )就是指仓库Hub,会使用pull和push命令,和GitHub的使用方法相同的。

    - docker镜像创建的两种方式?

    1. 通过执行Dockerfile文件生成
    > docker build 
    
    2. 通过已有的新容器(如,在旧容器中安装Pycharm或vim等软件后)生成自定义镜像
    > docker run <镜像名> # 通过镜像生成容器
    > docker commit <容器名> <镜像名> # 利用容器生成镜像
    
  • 相关阅读:
    div+css与table布局
    自动刷新网页效果
    Spring框架之Filter应用,filter可以使用spring注入资源
    http://localhost:8080/hohode
    java jacob 操作word 文档,进行写操作,如生成表格,添加 图片(这个不错,可以拿来直接用,非常好)
    java 填充word中的表格
    360抢票
    easyui 时间段校验,开始时间小于结束时间,并且时间间隔不能超过30天
    java操作word示例
    FastStone Capture 注册码 序列号
  • 原文地址:https://www.cnblogs.com/yangzhaonan/p/10415416.html
Copyright © 2020-2023  润新知