成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

新聞 后端
加載完P(guān)ython的Docker鏡像后,順手又裝了個(gè)Python?這樣的「誤會(huì)」,在你看完這篇對(duì)Python的Docker“正式版鏡像”的解讀后,就會(huì)煙消云散。

本文經(jīng)AI新媒體量子位(公眾號(hào)ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)聯(lián)系出處。

加載完P(guān)ython的Docker鏡像后,順手又裝了個(gè)Python?

[[338912]]

這樣的「誤會(huì)」,在你看完這篇對(duì)Python的Docker“正式版鏡像”的解讀后,就會(huì)煙消云散。

不僅可以了解到Docker鏡像的結(jié)構(gòu)、功能,還能對(duì)Docker的印象有所改觀:容器看起來(lái)真的比虛擬機(jī)好用!

下面以“Python正式版”為例,具體來(lái)了解一下Docker鏡像的用法和細(xì)節(jié)。

Docker鏡像這樣用

這個(gè)鏡像的基礎(chǔ)鏡像是Debian GNU/Linux 10,是Debian系統(tǒng)最新的一款名為Buster的版本。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

Tips:Buster是《玩具總動(dòng)員》中安迪的狗子,Debian開(kāi)發(fā)組喜歡用這款電影里的角色命名系統(tǒng)版本。

也就是說(shuō),這是個(gè)基于Linux的鏡像,不僅能保證穩(wěn)定性,還能提供bug修復(fù)。

接下來(lái),是文件中的環(huán)境變量

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

務(wù)必確認(rèn)在PATH前面加路徑,也就是你安裝鏡像的地方,這樣能保證用到的是安裝的鏡像。

此外,也確認(rèn)一下語(yǔ)言的環(huán)境變量,不過(guò)Python3已經(jīng)默認(rèn)UTF-8,所以這一步不一定要做。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

當(dāng)然,也可以確認(rèn)一下Python的最新版本(圖中是3.8.5)。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

確認(rèn)環(huán)境變量后,是關(guān)于運(yùn)行依賴(lài)的事情。

事實(shí)上,為了能運(yùn)行,Python需要依賴(lài)一些額外的軟件包。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

其中,ca-certificates相當(dāng)于一個(gè)證書(shū)列表,類(lèi)似于瀏覽器用來(lái)驗(yàn)證 https://url/ 的證書(shū),這也是Python,wget和其他工具用來(lái)驗(yàn)證服務(wù)器的證書(shū)。

至于netbase,則用來(lái)安裝一些/etc中的文件,通常用于將確切的名稱(chēng)映射到某些端口。

例如,/etc/services就會(huì)映射到443/tcp端口上。

在那之后,就是Python的安裝了。

一個(gè)編譯器工具鏈會(huì)被安裝,而Python代碼也會(huì)被下載、編譯,而不需要的Debian安裝包也會(huì)被刪掉。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

在這其中,最核心的部分有如下三點(diǎn):

1.Python會(huì)被安裝到/usr/local位置下
2.所有的.pyc文件都會(huì)被刪掉
3.一旦gcc等安裝包對(duì)編譯Python不再有用,那它們也會(huì)被刪掉

而所有的這些,都只需要通過(guò)RUN命令來(lái)實(shí)現(xiàn)。

也許你會(huì)注意到,在這個(gè)過(guò)程中,Python編譯了libbluetooth-dev。事實(shí)上,Python鏡像的確有藍(lán)牙接口,不過(guò)需要安裝對(duì)應(yīng)的安裝包。

此外,在設(shè)置別名上,在/usr/local/bin/python3和/usr/local/bin/python間,可以隨意選一個(gè)名稱(chēng)來(lái)用(反正是一樣的)。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

最后,是安裝pip,事實(shí)上,Docker會(huì)確保安裝的是新版本的pip,即它有自己的時(shí)間表,即使可能距離Python上一版發(fā)布已經(jīng)過(guò)了很久。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

在這個(gè)過(guò)程中,所有的.pyc文件都會(huì)被刪除。

done!好了,怎么運(yùn)行?

事實(shí)上,一句話(huà)就夠了。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

此外,如果在使用CMD時(shí)ENTRYPOINT為空,你的Python會(huì)在運(yùn)行鏡像時(shí)被默認(rèn)運(yùn)行。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

也可以根據(jù)需要,指定其他可執(zhí)行文件。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

一些你可能不知道的tips

雖然大多數(shù)人不會(huì)犯這個(gè)錯(cuò)誤,不過(guò)對(duì)于一些新手小白來(lái)說(shuō),還是可能在裝上Python的Docker鏡像后,順手又裝了個(gè)Python。

用這個(gè)Python的Docker正式版鏡像,你也能成容器高玩

這樣的話(huà),會(huì)導(dǎo)致兩個(gè)Python在鏡像中「打架」,造成不必要的混亂。

此外,Python的官方圖片往往也包含了最新的pip

雖然Python3.5的最后一個(gè)版本都是去年年末的事情了,不過(guò)即使是3.5的安裝,也會(huì)帶上最新的pip。

還要注意的一點(diǎn)是,這個(gè)鏡像安裝后會(huì)刪掉所有的.pyc文件。

此外,這個(gè)正式版鏡像并沒(méi)有安裝Debian的安全更新,可能需要你手動(dòng)安裝一下。

經(jīng)過(guò)一番操作后,你就可以放心地使用Python的Docker鏡像,在上面運(yùn)行相應(yīng)的程序了。

那么,Docker到底與虛擬機(jī)有什么不同?

Docker與虛擬機(jī)的區(qū)別

作為一個(gè)容器,Docker有點(diǎn)像虛擬機(jī),本質(zhì)上都是為了在不同環(huán)境中編寫(xiě)的各種程序而生。

這是因?yàn)椋幊陶Z(yǔ)言總是會(huì)隨著環(huán)境的更新而迭代,在Python更新了新版后,有人調(diào)侃Python2和Python3看起來(lái)根本不是一種語(yǔ)言。

如果開(kāi)發(fā)了一個(gè)Python3的程序,但測(cè)試和生產(chǎn)的環(huán)境只裝了Python2,運(yùn)行過(guò)程中就可能出現(xiàn)各種雞飛狗跳的事情。

[[338916]]

不過(guò)與虛擬機(jī)不同的是,Docker不用再自己裝個(gè)操作系統(tǒng)了,而這個(gè)東西,恰恰是最占地方的。

Docker將程序中要用到的各種環(huán)境「零件」和程序一起打包,做成一個(gè)鏡像,這樣使用者只需要加載這一個(gè)鏡像,就可以直接運(yùn)行程序。

相比于在電腦上加載好幾個(gè)虛擬機(jī),占用大半空間,Docker不失為只有一臺(tái)電腦時(shí),運(yùn)行各種程序的好選擇。

作者介紹

[[338917]]

Itamar Turner-Trauring有20多年的科學(xué)計(jì)算和分布式系統(tǒng)經(jīng)驗(yàn),寫(xiě)過(guò)Twisted網(wǎng)絡(luò)框架,也在谷歌工作過(guò),為Google Flight貢獻(xiàn)過(guò)后端C++代碼。

1996-2000年,Itamar Turner-Trauring在巴伊蘭大學(xué)和特拉維夫大學(xué)(以色列排名第二和第一的大學(xué))學(xué)習(xí)數(shù)學(xué)與計(jì)算機(jī)課程,并于2009年在哈佛大學(xué)取得文科學(xué)士學(xué)位,研究方向是人文學(xué)科。

現(xiàn)階段,Itamar Turner-Trauring會(huì)撰寫(xiě)Python相關(guān)的技術(shù)文章,幫助開(kāi)發(fā)者更快上手這款編程語(yǔ)言。

 

責(zé)任編輯:張燕妮 來(lái)源: 量子位
相關(guān)推薦

2013-10-24 09:43:15

Windows 8.1鏡像

2011-09-05 09:03:09

Python

2014-03-18 10:18:58

Python

2009-04-24 09:13:15

Ubuntu 9.04正式版鏡像

2009-04-24 14:54:32

LinuxUbuntu 9.04正式版

2011-04-28 13:45:10

Ubuntu 11.0

2009-04-09 17:09:32

LinuxVirtualBox

2011-04-29 09:07:43

Ubuntu 11.0下載體驗(yàn)

2021-08-22 17:41:13

Windows Ser微軟服務(wù)器

2015-07-29 15:47:30

Windows 10ISO鏡像

2019-09-04 09:26:42

谷歌Android開(kāi)發(fā)者

2010-03-08 14:21:00

phpMyAdmin

2011-05-17 09:10:26

Scala

2011-10-09 14:13:31

JavaFX

2011-11-07 12:36:44

Firefox 8.0發(fā)布

2011-11-17 10:08:08

openSUSE發(fā)布

2011-12-16 09:12:16

java

2012-01-11 09:44:21

2014-06-19 10:11:54

GoGo語(yǔ)言

2012-02-15 09:08:31

MySQL
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 91在线观看视频 | 午夜看看| 欧美精品一区二区在线观看 | 天天操天天射天天 | 97中文视频 | 亚洲一区二区在线视频 | 99精品欧美一区二区蜜桃免费 | 在线欧美小视频 | 国产精品欧美一区二区三区 | 免费的黄色片子 | 国产精品我不卡 | 成人自拍av | 国产精品美女久久久久久久网站 | 看片国产 | 精品国产乱码久久久久久88av | 久久久久久国产精品免费 | 欧美精品一区二区在线观看 | 成人看片在线观看 | 欧美一区二区三区 | 久草视频在线播放 | 成人小视频在线观看 | 精品国产91 | 欧美一区二区三区大片 | 亚洲一区二区三区在线播放 | av电影手机在线看 | 免费日韩av网站 | 日韩成人免费 | 免费污视频 | 久久99深爱久久99精品 | 欧美色视频免费 | 久久精品久久久久久 | 欧美亚州综合 | aaa级片| 亚洲国产精品一区二区www | 国产欧美一区二区三区久久人妖 | 国产欧美久久一区二区三区 | 黄色一级毛片免费看 | 欧美日韩精品免费观看 | 天天干天天色 | 亚洲精品久久国产高清情趣图文 | 精品久久一区二区 |