国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

使用Docker統(tǒng)一團(tuán)隊(duì)的開發(fā)環(huán)境

alin / 2454人閱讀

摘要:開場白作為一個(gè)技術(shù)團(tuán)隊(duì)的,你是如何保證成員的開發(fā)環(huán)境達(dá)到公司的標(biāo)準(zhǔn),或者是你定制的最低要求的如果你的回答是差不多就行了,有問題再說,那么,你已經(jīng)在給自己挖坑了。好的,成員們開始構(gòu)建你定制的開發(fā)環(huán)境了。

開場白

作為一個(gè)技術(shù)團(tuán)隊(duì)的Leader,你是如何保證成員的開發(fā)環(huán)境達(dá)到公司的標(biāo)準(zhǔn),或者是你定制的最低要求的?
如果你的回答是:差不多就行了,有問題再說,那么,你已經(jīng)在給自己挖坑了。

同事A的開發(fā)環(huán)境中用的是PHP 7.1,所以他在代碼里寫了這么一個(gè)函數(shù):

function getName(?int $id): string {
    return "name";
}

好的,?int 的意思是你的參數(shù)必須是數(shù)字,但是可以填一個(gè)數(shù)字以外的特殊類型,那就是null。


同事B用的是PHP 7.0,那么抱歉,他得這么改:

function getName(int $id = null): string {
    return "name";
}

?int需要被改成int,因?yàn)槟鞘?.1的Nullable語法


同事C用的是 PHP 5.6,好的,繼續(xù)改吧:

function getName($id = null) {
    return "name";
}

所有的類型定義都得移除,沮喪嗎?



好的,你作為Leader?怎么選擇用哪個(gè)同事的代碼作為最終輸出?可想而知,選擇哪個(gè)都不合適。

選擇 7.1

同事C 在抱怨,要那么高的版本真的好嗎?我沒用過新特性,也不感興趣。

選擇 7.0

同事A 在抱怨了,新語法多簡潔啊,一個(gè) ?int 就搞定了。

選擇 5.6

同事A/B 在抱怨,為什么不用強(qiáng)類型,寫代碼太沒樂趣了。




為什么

問題出在Leader,給了成員太多的選擇。會(huì)有什么后果?

優(yōu)點(diǎn) 缺點(diǎn)
部分成員的利益受損
內(nèi)部意見不統(tǒng)一,產(chǎn)生隔閡
可能出現(xiàn)被動(dòng)學(xué)習(xí)新知識(shí),生產(chǎn)力下降
維護(hù)多個(gè)不同時(shí)期的項(xiàng)目時(shí),本地環(huán)境的版本切換十分不方便
你的領(lǐng)導(dǎo)能力受到質(zhì)疑
在誘惑面前,人們往往會(huì)選擇最有利于自己的方式。不要試圖去挑戰(zhàn)人性,作為Leader的你,必須比任何一個(gè)成員都先做出選擇。
正題 Docker

我不想講docker是什么,因?yàn)槠渌说牟┛屠镆呀?jīng)寫爛了。

你需要知道的是,你可以把開發(fā)環(huán)境扔進(jìn)docker,然后讓每個(gè)成員忘記自己電腦里的開發(fā)環(huán)境。至于用了什么版本的php、mysql、linux、nginx、nodeJs,已經(jīng)固定在docker里了。
你再也不用擔(dān)心你的成員會(huì)用其他版本的環(huán)境去寫代碼了,因?yàn)槟阋呀?jīng)制定了你的規(guī)矩。

優(yōu)點(diǎn) 缺點(diǎn)
成員沒得選,只能用同一個(gè)版本的環(huán)境 Leader需要寫Docker配置
成員只需要知道docker怎么啟動(dòng),零學(xué)習(xí)成本
技術(shù)方面的交流障礙減少
代碼符合項(xiàng)目的基本需求,生產(chǎn)力提升
即使再多項(xiàng)目也沒關(guān)系,因?yàn)槊總€(gè)項(xiàng)目都是docker啟動(dòng),不需要考慮版本
Leader可以花更多精力在其它事情了
Dockerfile

也許你已經(jīng)寫完了所有的Dockerfile配置,并把這些文件放進(jìn)了項(xiàng)目的根目錄dockers/,同時(shí)為你的成員寫好了一個(gè)構(gòu)建腳本build.sh,接著加入版本控制(git,svn),最后推到git服務(wù)器等待成員拉取最新的開發(fā)環(huán)境。好的,成員們開始構(gòu)建你定制的開發(fā)環(huán)境了。

# 構(gòu)建鏡像
sh build.sh

# 查看構(gòu)建的鏡像
docker images

# 根據(jù)鏡像生成容器,僅供參考。本文不講述docker具體用法
docker run -it -d php:7.1 /bin/bash
docker run -it -d nginx:1.14.0 /bin/bash
docker run -it -d mysql:5.7 /bin/bash

犀利的你可能把生成容器的操作寫成一個(gè)腳本quick-start.sh,而且用的風(fēng)聲水起。筆者拍拍你的肩膀,同學(xué),為什么不用docker-dompose呢?

Docker Compose

可以這么說吧,這個(gè)東西就像是同時(shí)啟動(dòng)了多個(gè)你想要啟動(dòng)的鏡像,而且你還可以同時(shí)結(jié)束生成的容器。

# 同時(shí)啟動(dòng)
docker-compose up

# 同時(shí)結(jié)束
docker-compose down

是的,很任性,你只需要配置一下你需要啟動(dòng)哪些鏡像,然后把配置放到根目錄docker-dompose.yml中即可。
當(dāng)然了,還有更多特性,比如 哪些容器之間需要互相關(guān)聯(lián),被關(guān)聯(lián)的容器要用什么別名,需不需要等待關(guān)聯(lián)容器啟動(dòng)完成之后再啟動(dòng)自己,等等。。。

補(bǔ)充

如果您的項(xiàng)目比較多,那么推薦您利用git的子模塊(點(diǎn)擊訪問)去維護(hù)你的docker配置。這樣您改配置只要改一個(gè)地方,所有項(xiàng)目里面都會(huì)同步過去的,極大的提高了您的效率和維護(hù)成本。

# 假設(shè)已經(jīng)建好docker的git倉庫   git@git_repository_a
# 那么在您的開發(fā)項(xiàng)目中,初始化只需這樣做:
git submodule add git@git_repository_a

# 您會(huì)發(fā)現(xiàn)項(xiàng)目根目錄多了一個(gè)文件 .gitmodules 以及多了一個(gè)docker倉庫的文件夾
結(jié)語

可能不算是一篇技術(shù)文章,只是拋磚引玉,引導(dǎo)新的Leader怎么帶領(lǐng)團(tuán)隊(duì)走向正規(guī)化的道路。若是真要寫那么細(xì),可能10篇都不夠?qū)懥恕S惺裁醇夹g(shù)方面的問題可以在下方留言。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/27339.html

相關(guān)文章

  • 五阿哥鋼鐵電商平臺(tái)Docker容器云平臺(tái)建設(shè)實(shí)踐——你想知道都在這里!

    摘要:容器云架構(gòu)方案。容器云架構(gòu)方案基于容器技術(shù),運(yùn)維技術(shù)團(tuán)隊(duì)開發(fā)了五阿哥網(wǎng)站的容器云平臺(tái)。多云對(duì)接私有云和公有云進(jìn)行統(tǒng)一托管,包含網(wǎng)絡(luò)區(qū)域配置,實(shí)例開通及的環(huán)境初始化配置等。技術(shù)選型及實(shí)踐鏡像標(biāo)準(zhǔn)眾所周知,的鏡像是分層的。 前言 五阿哥鋼鐵電商平臺(tái)(www.wuage.com)是由鋼鐵行業(yè)第一的中國五礦與互聯(lián)網(wǎng)第一的阿里巴巴聯(lián)手打造,并充分運(yùn)用雙方股東優(yōu)勢(shì)資源,即:阿里巴巴在大數(shù)據(jù)、電商運(yùn)...

    jeffrey_up 評(píng)論0 收藏0
  • 曾金龍:迅雷云Docker開發(fā)實(shí)踐

    摘要:問能否談一下迅雷云使用的過程其實(shí)最初的時(shí)候,迅雷團(tuán)隊(duì)對(duì)是懷有謹(jǐn)慎的態(tài)度的。三調(diào)度算法是迅雷云定制優(yōu)化的。迅雷在使用這方面一直沒有把數(shù)據(jù)層面交給迅雷云之外的系統(tǒng)。 非商業(yè)轉(zhuǎn)載請(qǐng)注明作譯者、出處,并保留本文的原始鏈接:http://www.ituring.com.cn/article/201256 曾金龍就職于迅雷網(wǎng)絡(luò),是國內(nèi)覆蓋面最廣的迅雷P2P引擎核心研發(fā)成員。他畢業(yè)于中山大...

    iflove 評(píng)論0 收藏0
  • 阿里巴巴1682億背后“企業(yè)級(jí)”高效持續(xù)交付

    摘要:摘要在北京云棲大會(huì)上,阿里巴巴高級(jí)技術(shù)專家陳鑫花名神秀,給大家?guī)砹藘|背后的企業(yè)級(jí)高效持續(xù)交付,引起強(qiáng)烈共鳴。 摘要: 在2017北京云棲大會(huì)上,阿里巴巴高級(jí)技術(shù)專家陳鑫(花名神秀),給大家?guī)砹恕?682億背后的企業(yè)級(jí)高效持續(xù)交付》,引起強(qiáng)烈共鳴。神秀從技術(shù)負(fù)責(zé)人關(guān)心的研發(fā)流程混亂、質(zhì)量無法保障、環(huán)境管理低效、資源浪費(fèi)等方面,結(jié)合阿里巴巴的DevOps實(shí)踐,深度解析了企業(yè)級(jí)持續(xù)交付如...

    Youngs 評(píng)論0 收藏0
  • 宜信開源|詳解PaaS平臺(tái)LAIN功能和架構(gòu)

    摘要:是宜信公司大數(shù)據(jù)創(chuàng)新中心開發(fā)的開源平臺(tái)。為宜信大數(shù)據(jù)創(chuàng)新中心各個(gè)團(tuán)隊(duì)提供了統(tǒng)一的測試和生產(chǎn)環(huán)境,簡化了服務(wù)的部署與上線流程,也降低了運(yùn)維人員對(duì)系統(tǒng)管理的復(fù)雜度。基于容器技術(shù),面向多樣化的技術(shù)棧,并且天然隔離系統(tǒng)和應(yīng)用的依賴。 LAIN是宜信公司大數(shù)據(jù)創(chuàng)新中心開發(fā)的開源PaaS平臺(tái)。在金融的場景下,LAIN 是為解放各個(gè)團(tuán)隊(duì)和業(yè)務(wù)線的生產(chǎn)力而設(shè)計(jì)的一個(gè)云平臺(tái)。LAIN 為宜信大數(shù)據(jù)創(chuàng)新中...

    mist14 評(píng)論0 收藏0
  • 云計(jì)算與 Cloud Native | 數(shù)人云CEO王璞@KVM分享實(shí)錄

    摘要:分享實(shí)錄云計(jì)算技術(shù)源于互聯(lián)網(wǎng)公司,現(xiàn)在云計(jì)算已經(jīng)是下一代企業(yè)級(jí)的發(fā)展趨勢(shì)。如何做云計(jì)算一直是云計(jì)算技術(shù)的領(lǐng)導(dǎo)者?;ヂ?lián)網(wǎng)公司的快速發(fā)展,已經(jīng)印證了云計(jì)算技術(shù)和云原生應(yīng)用相比傳統(tǒng)構(gòu)架的巨大優(yōu)勢(shì)。 今天小數(shù)又給大家?guī)硪黄韶洕M滿的分享——來自KVM社區(qū)線上群分享的實(shí)錄,分享嘉賓是數(shù)人云CEO王璞,題目是《云計(jì)算與 Cloud Native》。這是數(shù)人云在KVM社區(qū)群分享的第一彈,之后還有數(shù)...

    _Zhao 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

alin

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<