如何选择Docker基础镜像

镜像官网
操作系统基础镜像
busybox
Alpine
CentOS
Ubuntu
Debian
编程语言基础镜像
Java基础镜像
Python基础镜像
NodeJs基础镜像
应用基础镜像
Nginx基础镜像
Tomcat基础镜像
Jetty基础镜像
其它基础镜像例子
Maven基础镜像
Jenkins基础镜像
GitLab基础镜像
如何选择Docker基础镜像
因为Docker镜像是基于基础镜像来构建的,因此选择的基础镜像越高级,我们要做的底层工作就越少。
比如,如果构建一个Java应用的镜像,选择一个openjdk的镜像作为基础镜像比选择一个alpine镜像作为基础镜像要简单地多。
镜像官网
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 Hat,常用于追求稳定性的企业应用
ubuntu 81.1MB 主要用于生产环境,常用于人工智能计算和企业应用
debian 101MB 主要用于生产环境
busybox
描述:可以将busybox理解为一个超级简化版嵌入式Linux系统。
官网:https://www.busybox.net/
镜像:https://hub.docker.com//busybox/
包管理命令:apk, lbu
包管理文档:https://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management
Alpine
描述:Alpine是一个面向安全的、轻量级的Linux系统,基于musl libc和busybox。
官网:https://www.alpinelinux.org/
镜像:https://hub.docker.com/
/alpine/
包管理命令:apk, lbu
包管理文档:https://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management
CentOS
描述:可以理解CentOS是RedHat的社区版
官网:https://www.centos.org/
镜像:https://hub.docker.com//centos/
包管理命令:yum, rpm
Ubuntu
描述:另一个非常出色的Linux发行版
官网:http://www.ubuntu.com/
镜像:https://hub.docker.com/
/ubuntu/
包管理命令:apt-get, dpkg
Debian
描述:另一个非常出色的Linux发行版
官网:https://www.debian.org/
镜像:https://hub.docker.com//debian/
包管理命令:apt-get, dpkg
编程语言基础镜像
Java基础镜像
https://hub.docker.com/
/java/ (Deprecated)
https://hub.docker.com//openjdk/
由于Oracle JDK license问题,Docker官方的Java基础镜像使用的是OpenJDK而不是Oracle JDK。
Python基础镜像
https://hub.docker.com/
/python/
NodeJs基础镜像
https://hub.docker.com//node/
应用基础镜像
Nginx基础镜像
https://hub.docker.com/
/nginx/
Tomcat基础镜像
https://hub.docker.com//tomcat/
Jetty基础镜像
https://hub.docker.com/
/jetty/
其它基础镜像例子
Maven基础镜像
https://hub.docker.com/_/maven/
Jenkins基础镜像
https://hub.docker.com/r/jenkins/jenkins/
GitLab基础镜像
https://hub.docker.com/r/gitlab/gitlab-ce/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/200987.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

量化学习笔记——入门与基本概念

基本概念 量化投资 投资的核心是大数定律。 量化投资就是以数据为基础,以策略模型为核心,以程序化交易为手段,以 追求绝对收益为目标 的投资方法。 用数学表示金融市场,其数学定义: Y F ( x 1 , x 2 , . . . . .…

Java 连接Sqlite数据库

POM文件添加依赖 <dependency><groupId>org.xerial</groupId><artifactId>sqlite-jdbc</artifactId><version>3.36.0.3</version></dependency> application.yml spring:datasource:#url: jdbc:sqlite::resource:db/main.db…

python 0 or 1为什么返回1,or运算原理

0 or 1的python表达式为什么返回1 首先&#xff0c;应该先搞清楚or的用法&#xff0c;在逻辑or的比较运算中&#xff0c;比如m or n中&#xff0c;Python会先对m进行bool布尔运算bool(m)&#xff0c;如果返回True&#xff0c;则m or n的返回值为m&#xff0c;如果返回False&am…

备战春招——12.05算法

树、二叉树 本次主要是对树、二叉树的前中后和递归与非递归遍历以及通过这种结构完成一些操作实现。 二叉树 中序遍历 中序遍历就是中间打印出结果嘛,如下列递归实现的&#xff0c;中间取结果. /** 递归实现* Definition for a binary tree node.* struct TreeNode {* …

Nodejs+vue+ElementUi自动排课系统

使用自动排课系统分为管理员和学生、教师三个角色的权限子模块。 管理员所能使用的功能主要有&#xff1a;首页、个人中心、学生管理、教师管理、班级信息管理、专业信息管理、教室信息管理、课程信息管理、排课信息管理、系统管理等。 学生可以实现首页、个人中心、排课信息管…

Java集合框架之争:ArrayList vs LinkedList

友情提示&#xff1a;LinkedList其实就是数据结构中的双向链表&#xff0c;没学过的话可以学一下有关链表的知识&#xff0c;至于LinkedList中的源码其实大多数据结构的基本链表操作实现的&#xff0c;这里我就不多做说明了&#xff0c;有兴趣的话可自行看源码 由于ArrayList由…

Java第二十一章 :网络通信

网络程序设计基础 网络程序设计编写的是与其他计算机进行通信的程序。Java 已经将网络程序所需要的元素封装成不同的类&#xff0c;用户只要创建这些类的对象&#xff0c;使用相应的方法&#xff0c;即使不具备有关的网络支持&#xff0c;也可以编写出高质量的网络通信程…

【模型可解释性系列一】树模型-拿到特征重要度-打印关键因素

接下来一段时间内&#xff0c;会主要介绍下模型可解释性方向的一些常用方法。 模型可解释性&#xff1a;主要用来解释为什么这个样本的特征是这样的时候&#xff0c;模型结果是那样。面向老板汇报工作(尤其是不懂算法的老板)和业务方。 常用的树模型 xgboost、lightgbm这两个…

Android studio:打开应用程序闪退的问题2.0

目录 找到问题分析问题解决办法 找到问题 老生常谈&#xff0c;可能这东西真的很常见吧&#xff0c;在之前那篇文章中 linkhttp://t.csdnimg.cn/UJQNb 已经谈到了关于打开Androidstuidio开发的软件后明明没有报错却无法运行&#xff08;具体表现为应用程序闪退的问题&#xff…

4-Docker命令之docker exec

1.docker exec介绍 docker exec命令是用来在运行中的容器运行命令 2.docker exec用法 docker exec [参数] [root@centos79 ~]# docker exec --helpUsage: docker exec [OPTIONS] CONTAINER COMMAND [ARG...]Execute a command in a running containerAliases:docker conta…

数据结构之插入排序

目录 前言 插入排序 直接插入排序 插入排序的时间复杂度 希尔排序 前言 在日常生活中&#xff0c;我们不经意间会遇到很多排序的场景&#xff0c;比如在某宝&#xff0c;某东上买东西&#xff0c;我们可以自己自定义价格是由高到低还是由低到高&#xff0c;再比如在王者某…

云原生的 CI/CD 框架tekton - pipeline(一)

文章目录 1. 官方介绍2. 组件2.1 Tekton Pipelines2.2 部署pipeline2.3 部署dashborad2.3.1 task2.3.2 taskrun2.3.3 Pipeline2.3.4 PipelineRun 3. 案例案例1: 拉取代码并查看readmestep1: 创建task - 拉取代码step2: 创建task - 查看reamdestep3: 创建task的编排 - pipelines…

Flink入门之DataStream API及kafka消费者

DataStream API 主要流程&#xff1a; 获取执行环境读取数据源转换操作输出数据Execute触发执行 获取执行环境 根据实际情况获取StreamExceptionEnvironment.getExecutionEnvironment(conf)创建本地环境StreamExecutionEnvironment.createLocalEnvironment()创建远程环境creat…

vue-template-compiler 的原理

什么是 Vue 模板&#xff1f; Vue 模板是一种用 HTML 语法来描述 Vue 组件的视图的方式&#xff0c; 例如&#xff1a; <template><div class"example">{{ msg }}</div> </template> <script>export default {data() {return {msg: &…

软件测试面试题解析--什么题是必问的?

设计测试用例的主要方法有哪些&#xff1f;简述一下缺陷的生命周期&#xff1f;测试流程&#xff1f;项目流程&#xff1f;验收测试中和β测试区别&#xff1f;如何维护测试用例&#xff1f;每天测多少用例怎么分配的测试的一天能找多少bug你在上一家公司&#xff0c;写没写过测…

Selenium+Unittest+HTMLTestRunner框架更改为Selenium+Pytest+Allure(二)

1 代码框架 整体项目结构如图&#xff1a; Common&#xff1a;公共库 Logs&#xff1a; 日志目录 Page&#xff1a; 页面元素 Report&#xff1a;测试报告 TestCase&#xff1a;测试用例 TestData&#xff1a; 测试数据 2 单模块运行 直接上代码&#xff1a; # -*- coding…

详细介绍如何使用 SSD 进行实时物体检测:单次 MultiBox 探测器-含源码

介绍 在实时对象检测中,主流范例传统上采用多步骤方法,包括边界框、像素或特征重采样以及高质量分类器应用的提议。虽然这种方法已经实现了高精度,但其计算需求往往阻碍了其对实时应用的适用性。然而,单次多框检测器 (SSD) 代表了基于深度学习的对象检测的突破性飞跃。SSD…

SpringCloud | Dubbo 微服务实战——注册中心详解

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 |Eureka,Nacos,Consul,Zookeeper在Spring Cloud和Dubbo中实战 引言 在项目开发过程中&#xff0c;随着项目不断扩大&#xff0c;也就是业务的不断增多&#xff0c;我们将采用集群&#xf…

day7 四数之和为x

vector<vector<int>> fourSum(vector<int>& nums, int target) { vector<vector<int>> result; sort(nums.begin(), nums.end()); for (int k 0; k < nums.size(); k) { // 剪枝处理 if (nums[k] > target && nums[k] > …

647. Palindromic Substrings 516. Longest Palindromic Subsequence

647. Palindromic Substrings Given a string s, return the number of palindromic substrings 回文子串 in it. A string is a palindrome when it reads the same backward as forward. A substring is a contiguous sequence of characters within the string. nomal: …