【B站UP主-同济子豪兄】十分钟了解华为云开源软件镜像站

举报
同济子豪兄 发表于 2020/09/20 22:52:26 2020/09/20
【摘要】 什么是开源软件镜像站? 为什么要有开源软件镜像站? 有哪些开源软件镜像站? 如何使用开源软件镜像站? 清华?阿里?华为?豆瓣?网易?开源镜像站哪家强? 十分钟的视频,告诉你答案 华为云开源软件镜像站:https://mirrors.huaweicloud.com/

十分钟了解华为云开源软件镜像站

同济大学开源软件协会 张子豪 2020-09-20

这篇博客要讲什么

华为开源镜像站(Mirrors)是由华为云提供的开源组件、开源操作系统及开源DevOps工具镜像站,目前已提供Maven、NPM、NuGet、CentOS、Ubuntu、Debian等镜像下载服务。

通过这个博客及配套的视频,介绍华为开源镜像站,并以目前火热的编程语言Python为例,使用华为开源镜像站下载Python安装包,使用华为开源镜像站下载安装人工智能、数据分析、机器学习的Python第三方工具包,大大提升下载速度。

幻灯片1.PNG

幻灯片3.PNG


什么是开源软件镜像站


我是同济子豪兄,这个博客跟大家聊聊程序员都使用过的开发工具,开源软件镜像站。

那么,什么是开源镜像站,为什么要有开源镜像站,有哪些开源镜像站,怎么使用开源镜像站呢?

作为开发者,程序员,我们每天都要和各种开源编程语言、操作系统、编程工具打交道。而开源软件镜像站就是帮我们在国内免费高速下载这些资源的利器。比如,如果你是Web前端或者后端开发,要用npm下载Node.js的包。如果你是数据分析师,要使用MySQL、PostgreSQL数据库。如果你是人工智能算法工程师,要使用Tensorflow,Pytorch,Keras这些深度学习和机器学习框架。如果你是云计算后端或者运维,要使用Ubuntu,CentOS,Fedora这些Linux发行版,还有Docker,Kubernets容器。就算你是小学生,现在也要学Python编程,Python之所以这么火,一方面是因为语法简单,非常容易上手。

另外一方面,Python的PyPI社区有海量第三方开源工具包,涵盖数据挖掘、人工智能、可视化、后端开发方方面面,使用包管理器pip下载pypi社区上的第三方工具包,是每一个学python同学的必备技能。

幻灯片4.PNG


那么问题来了,刚刚上面我们说的所有第三方工具包、开发工具,和操作系统,包括开发者非常熟悉的开源代码托管平台Github里边的海量项目,虽然都是开源的,但很遗憾,绝大部分资源都在海外的服务器上,如果你想在国内网络下载,需要远隔重洋发起网络请求,下载速度会非常非常慢。比如你是一个Python初学者小白,刚刚在电脑上安装好Python,想使用包管理器pip下载著名的人工智能框架Tensorflow,在我的电脑上竟然要二十个小时之久。


开源软件镜像站的原理

这个时候,开源软件镜像站就闪亮登场了,它完美解决了在国内下载外网开源资源慢的问题。

这张图说的非常明白。这个男士,就是我们,椰子是外网的开源资源,但是资源远在海外服务器,直接下载的话会非常慢,甚至完全无法访问,而开源软件镜像站呢,就是这位红衣女郎,她已经帮我们提前从国外获取了这个资源,我们不需要直接去喝椰子,直接从她这里喝就可以了。这位红衣女郎会保持和椰子里一模一样的资源,像照镜子一样,所以称之为“镜像站”。

幻灯片16.PNG



有哪些开源软件镜像站

世界著名互联网大厂和高校,比如Facebook、哈佛、MIT都有自己的公共开源镜像站。

除了软件行业之外,谷歌学术也有国内镜像站。便于国内的科研人员查论文使用。

国内有很多知名的互联网大厂、高校都设立了开源软件镜像站,比如著名的清华大学开源软件镜像站、中科大、阿里云开源镜像站、网易、豆瓣、华为云开源镜像站。



有趣的时,不同互联网大厂的开源镜像站,UI界面设计也有天壤之别,从豆瓣pypi镜像站土土的程序猿界面,到网易开源镜像站的工科直男风,再到阿里巴巴镜像站的淘宝橙系风,还有华为云开源镜像站走心的UI设计,华为云开源软件镜像站,由华为云Devcloud运营维护,我们开发者虽说都是直接通过命令行使用镜像站,不会专门看UI设计,但是还是看到了华为对开发者使用体验的尊重。同时,还有一些诸如点击收藏、过滤筛选、关键词搜索的附加功能,便于后续使用。

这里有一个帖子,列举了国内所有知名的开源镜像站。这些镜像站呢,分为站点类镜像站、操作系统类镜像站、服务器类镜像站、开发工具和编程语言类镜像站,还有教你怎么搭建自己的镜像站。


幻灯片26.PNG

幻灯片27.PNG


上面这些国内企业和高校的镜像站,专门服务国内的开发者,提供高速免费的下载服务。

在知乎上有一个帖子,里面有清华、中科大、浙大、网易、上科大镜像站的创始人或者运营负责人的心路历程。

还有很多高校的开源镜像站,大多服务于校内学生,比如华中科技大学、同济大学、重庆大学、青岛大学镜像站。

幻灯片30.PNG


比如清华大学开源软件镜像站,就是由清华大学学生网络与开源软件协会这个社团负责运营,自动定期和国外源保持镜像同步。

比如,Python的Pypi社区每隔五分钟和国外源同步一次。你只需要在命令行里运行这行命令,

 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

就可以一劳永逸把Python的pip包下载源永久切换到清华镜像站。

也可以把这个链接换成其它的镜像站,达到同样的效果。比如换到华为云开源镜像站。

 pip config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple

换源后,如果你想下载python的第三方工具包,直接在命令行运行 pip install <第三方包名>即可快速下载安装 例如:pip install pandas

幻灯片32.PNG


这里,我们使用华为云开源镜像站,下载速度还是很快的,不到十秒就下载好pandas了,这是python里面最常用的数据分析工具之一,可以代替excel实现自动化办公,大大提升你的工作效率。

像华为云、阿里云、网易、豆瓣这些开源镜像站,背后由互联网和云计算大厂专人维护,无论是基础算力设施、服务器硬件、网络带宽、CDN加速、数据安全隐私,都是稳定可信赖的,而且有覆盖全国,乃至全世界的数据中心,用户体验会很不错。


实战华为云开源镜像站

幻灯片39.PNG


下面我就以华为云开源镜像站为例,详细讲讲,除了Python的第三方包之外,还可以获取哪些开源资源,

其它国内镜像站呢使用方法都大同小异。

作为一个开发者,首先要和各种编程语言打交道,每种编程语言都有自己的包管理器和第三方工具包社区生态,比如JAVA的maven包管理器,Node.js的npm包管理器,Python的pip包管理器和PyPI社区,PHP的Packagist社区,顺便一提,PHP号称是最好的编程语言。Ruby、PHP、.NET语言的开源依赖包,都可以在镜像站中找到。

如果你的电脑里安装了这些编程语言,就可以把对应的包管理器的下载源切换到华为云开源镜像站。

刚刚讲了python的换源,你同样也可以给Node.js的npm换源,给PHP的packgist换源。都是只需要在命令行里输入一行命令,就可以一劳永逸完成。


你还可以在语言组件里指定第三方包社区,以及包的名称,来进行搜索。

比如我指定Python的pypi社区,搜索Tensorflow,点击就可以看到最新版本的下载链接,复制这个命令到命令行里运行即可。这是谷歌开源的人工智能和深度学习框架。

比如我指定Node.js的npm社区,搜索echarts,点击就可以看到最新版本的下载链接,复制这个命令到命令行里运行即可。这是百度和阿帕奇开源的数据可视化神器。


讲完编程语言,再看开发工具,镜像站里涵盖了各种编程语言安装包,比如Python,Node.js,Ruby,还有Web服务器,比如Apache、Nginx,数据库,比如MySQL、PostgreSQL,跨平台应用开发工具Electron,写代码必备的开源文本编辑器Atom,版本控制软件git,Web自动化工具PhatonJs,以及网络自动化调试爬虫神器Selenium。

轻量化ssh工具PuTTY,用来连树莓派或者服务器很方便。

Linux毫无疑问是程序员和开发者最爱的操作系统,在华为云开源镜像站里可以下载所有常见的Linux发行版,比如CentOS Ubuntu Debian Fedora Deepin Arch Linux Kali OpenSUSE等等。

你可以选择x86架构,或者是ARM架构。对于后端运维和云开发者,还有Docker及Kubernetes容器安装包。在OS镜像栏目里,左侧选择Linux发行版,比如ubuntu,fedora,在右侧就可以看到不同版本、不同架构的镜像

对于常用到的镜像,点击小爱心收藏,在我的收藏栏目里就能看到。非常方便。

感谢华为云、开源社、同济大学开源软件协会、重庆大学开源协会和Linux用户组、网络信息协会对本视频制作的大力支持。

最后我想说,不管是阿里、网易还是华为,不管是清华,浙大还是同济,开源软件镜像站都是公益性,非盈利,并且长期维护的,创办开源镜像站不仅需要服务器硬件、网络带宽、技术运维成本,更需要一人栽树、众人乘凉的开源精神和极客风范,让我们向开源镜像站的运营者致敬,他们代表着中国开源社区的过去,现在和未来。



彩蛋:华为全联接2020大会

幻灯片45.PNG


偷偷告诉大家,华为全联接2020大会快到了,9月23日至26日在上海世博中心开启,

众多大咖共话5G通信、新基建、智能交通、各行业全场景智能连接和数字化转型。

9月25日和26日属于开发者日。

我到时候也会去参加,给大家带来全程的直播。欢迎大家来找我玩。

好了我们下期视频再见,拜拜~


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。