zoukankan      html  css  js  c++  java
  • 镜像的导入与导出

    镜像导入导出场景

    异地的开发写完代码,把自己的应用程序打包成镜像,发送给测试

    测试运行镜像(前提是把镜像导入到docker),镜像运行成功后,等于环境部署成功,可以开始测试。

    开发操作

    1、写代码

    2、将写的代码打包成镜像

          1)执行代码的依赖环境(比如写的代码需要在Linux上执行,哪么就需要Linux的环境)

          2)执行代码本身的环境(比如Java的环境需要jdk)

    3、把镜像导出

          docker image save centos:7.8.2003(被导出的镜像) -o D:/temp.taz

     

    4、发送给测试

    测试操作

    1、接收开发发送的镜像

    2、导入镜像到docker中,导出镜像成功后输出的信息:e07ee1baac5f: Loading layer 14.85kB/14.85kB Loaded image: hello-world:latest

    3、运行镜像

    4、开始测试

    docker run 镜像名称

    这个过程可以理解为:把镜像文件创建为docker容器的一部分,然后再进行启动。需要特别注意的是:容器内的进程必须是前台运行状态,否则容器直接退出。

    还有一点需要特别注意:docker run 镜像名

    如果镜像文件在本地不存在,就会在线去下载该镜像的资源信息,如:docker run -it --rm centos

    docker的容器启动成功后,使用docker ps -a可以查看容器的ID记录信息

     githup:公有云成都代码托管平台

    dockerhup:公有云的docker镜像托管平台

    容器命令

    在运行镜像中,后面需要带一些指令的信息,这些指令的信息具体汇总如下:

    -d:后台运行

    -it:交互式命令

    --rm:容器退出后自动被删除

    --name:给容器起一个名字

    -p:端口映射

    容器信息的查看

    Linux:docker ps -a | grep 容器ID 

    windows:docker ps -a | findstr 容器ID

    查看容器的详细的信息

    docker container inspect 容器ID

    查看容器的日志

    1、运行镜像 docker run -it --rm centos

    2、查看运行中的容器ID信息 docker ps -a

    3、获取到容器的ID后,查看容器实时的日志信息 docker logs -f 容器ID

    4、比如在Linux中安装vim的编辑器,安装的命令为:yum install -y vim,那么在容器的日志记录中也会实时的显示安装他的全部信息

    docker logs -f 容器ID:查看实时的日志文件内容,如果想退出,就需要按ctrl+c

    docker logs 容器ID:一次性查看所有的日志文件内容

    docker logs 容器ID | tail -3:查看最新的3行日志文件(日志最新的内容)  仅仅适用于Linux的系统

    docker logs 容器ID | head 3:查看日志文件最前面的3行

    容器的提交解决了什么?

    解决了容器中安装的环境,但是必须在容器推出前要进行提交,如果没有提交,那么推出后,安装的环境等于再次安装

    退出vim的步骤:

    按下esc键,同时按下shift :,之后输入q!,按下回车键就会退出

    容器提交的步骤

    1、运行镜像到容器后

    2、在容器里面进行具体的操作(比如安装软件、搭建环境等),但是容器不能退出

    3、打开一个新的控制台,查看到容器的ID  docker ps -a

    4、对容器进行提交 docker commit 容器ID

          镜像新的名称,如:docker commit  容器ID centos_vim_mysql

    5、待容器提交成功后,之前的容器进行退出

    6、查看所有的镜像,就会发现存在centos_vim_mysql的镜像

    7、运行新的镜像文件,如docker run -it --rm centos_vim_mysql

    指定镜像的名称

    docker image tag 镜像ID centos_vim(镜像的名称)  

    1、如果镜像名称是none就不会复制,直接把none的镜像名称修改为新的镜像名称

    2、如果镜像名称不是none,那么在此修改等价于复制

    1、获取nginx的镜像:docker pull nginx

    2、端口映射:-p 80(宿主机的端口):(容器里面的端口)

    3、后台方式运行容器: docker run -d -p 80:80 nginx

    4、查询容器的端口: docker port 容器ID

    演示:容器的停止和启动

    docker port ID、docker stop ID、docker port ID、dockerstart ID、docker port ID

  • 相关阅读:
    Linux命令_2
    Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag.
    壁纸目录
    ubuntu 解决“无法获得锁 /var/lib/dpkg/lock -open (11:资源暂时不可用)”的方法
    Oracle VM VirtulBox 安装Ubuntu16.04
    Linux 中文输入法安装
    Android LayoutInflater 相关知识
    Linux命令_1
    青蛙跳杯子
    横向打印二叉树
  • 原文地址:https://www.cnblogs.com/Kaylee/p/15729389.html
Copyright © 2011-2022 走看看