zoukankan      html  css  js  c++  java
  • Docker常用镜像基本操作

    file

    Docker

    Docker镜像的首行从FROM alpine之类的镜像开始,但是最初的基础镜像是如何创建的,本文使用一个busybox创建一个基础镜像,相信在此过程中会对docker一些相关的概念有进一步的理解。

    什么是基础镜像(base image)

    简单来说,基础镜像就是没有From或者FROM scratch开头的Dockerfile所构建出来的镜像。比如alpine,这个很小的linux镜像目前只有4M左右

    Docker常用镜像选择

    因为Docker镜像是基于基础镜像来构建的,因此选择的基础镜像越高级,我们要做的底层工作就越少。

    比如,如果构建一个Java应用的镜像,选择一个openjdk的镜像作为基础镜像比选择一个alpine镜像作为基础镜像要简单地多。

    Docker镜像官网

    Docker镜像官网(Docker Hub): https://hub.docker.com

    阿里云容器Hub:https://dev.aliyun.com

    Google镜像(gcr.io):https://console.cloud.google.com/gcr/images/google-containers/GLOBAL (主要为Kubernetes相关镜像)

    操作系统基础镜像

    比如你要从Linux操作系统基础镜像开始构建,可以参考下表来选择合适的基础镜像:

    镜像名称 大小 使用场景
    busybox 1.15MB 临时测试用
    alpine 4.41MB 主要用于测试,也可用于生产环境
    centos 200MB 主要用于生产环境,支持CentOS/Red
    ubuntu 81.1MB 主要用于生产环境,常用于人工智能计算和企业应用
    debian 101MB 主要用于生产环境

    构建镜像

    使用命令 docker build ,来创建一个新的镜像。因此我们需要创建一个 Dockerfile 文件,其中包含一组指令来告诉 Docker 如何构建我们的镜像。
    我们可以根据需求选择合适的基础镜像来构建我们需要的镜像文件

    Dockerfile

    FROM    centos:6.7
    WORK test
    ADD . .
    EXPOSE  8080
    CMD ['test']
    

    如何使用镜像

    • 使用docker run运行镜像文件:
      当我们单独管理一个镜像文件时,推荐这种方式,可以简单快捷运行已打包的镜像
    • 使用docker-compose运行镜像文件:
      当需要集中管理多个镜像文件时,推荐这种方式,可以更好的集中管理所有的镜像文件

    进入容器操作

    • docker exec -it test_image /bin/sh

    • docker exec -it test_image bash

    • docker exec -it test_image sh
      公众号

  • 相关阅读:
    POJ 2987:Firing(最大权闭合图)
    BZOJ 1001:[BeiJing2006]狼抓兔子(最小割)
    HDU 1007:Quoit Design(分治求最近点对)
    POJ 1986:Distance Queries(倍增求LCA)
    HDU 3879 && BZOJ 1497:Base Station && 最大获利 (最大权闭合图)
    BZOJ-1011 遥远的行星
    BZOJ-1044 木棍分割
    BZOJ-1042 硬币购物
    BZOJ-1050 旅行
    BZOJ-1037 生日聚会
  • 原文地址:https://www.cnblogs.com/luolianxi/p/13223722.html
Copyright © 2011-2022 走看看