内容简介:Docker镜像的首行从FROM alpine之类的镜像开始,但是最初的基础镜像是如何创建的,本文使用一个busybox创建一个基础镜像,相信在此过程中会对docker一些相关的概念有进一步的理解。简单来说,基础镜像就是没有From或者FROM scratch开头的Dockerfile所构建出来的镜像。比如alpine,这个很小的linux镜像目前只有4M左右
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.... (主要为Kubernetes相关镜像)
操作系统基础镜像
比如你要从Linux操作系统基础镜像开始构建,可以参考下表来选择合适的基础镜像:
镜像名称 | 大小 | 使用场景 | |
---|---|---|---|
busybox | 1.15MB | 临时测试用 | |
alpine | 4.41MB | 主要用于测试,也可用于生产环境 | |
centos | 200MB | 主要用于生产环境,支持CentOS/Red | Hat,常用于追求稳定性的企业应用 |
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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
PHP for the World Wide Web, Second Edition (Visual QuickStart Gu
Larry Ullman / Peachpit Press / 2004-02-02 / USD 29.99
So you know HTML, even JavaScript, but the idea of learning an actual programming language like PHP terrifies you? Well, stop quaking and get going with this easy task-based guide! Aimed at beginning ......一起来看看 《PHP for the World Wide Web, Second Edition (Visual QuickStart Gu》 这本书的介绍吧!