zoukankan      html  css  js  c++  java
  • Docker commit使用

    有时候需要在基础镜像里面安装某些依赖,如果把命令写在Dockerfile里,部分依赖软件下载很慢,构建镜像的时候又会花很长的时间。所以最好是分装一个包含依赖库的新镜像。

    docker提供commit来实现

     

    比如我有一个python镜像,比较精简。缺乏freetds-dev和unixodbc-dev这两个依赖。

    1.先把镜像run起来

    docker run -it --name python docker.io/python:3.6.4 /bin/bash

    /bin/bash进入容器内部进行交互

     

    2.执行安装命令

    root@39eaa5aa7332:/code# apt-get install freetds-dev
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    root@39eaa5aa7332:/code# apt-get install unixodbc-dev
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done

    安装完成后,ctrl+p+q退出容器。

     

    3.将容器打包成镜像,执行docker commit

    [root@CentOS ~]# docker commit 39eaa5aa7332 python3.6.4-dev
    sha256:ca46b1ed99abc1338881a55a043ee9670a66601530b3f2e63f41eb949b91e84d

    然后执行docker images就可以看到这个镜像了

  • 相关阅读:
    java线程上
    java常用类
    java面向对象4
    java 面向对象三
    java面向对象下
    java面向对象
    java基础下
    Java之Stream流
    JAVA泛型
    英语
  • 原文地址:https://www.cnblogs.com/shenh/p/9450163.html
Copyright © 2011-2022 走看看