日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

开箱一个docker

發(fā)布時(shí)間:2023/12/10 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开箱一个docker 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

開(kāi)箱一個(gè)docker

1、docker 的出現(xiàn)?

1.1、環(huán)境切換配置麻煩

通常我們?cè)陂_(kāi)發(fā)環(huán)境寫(xiě)好代碼,打個(gè)war/jar包,扔到tomcat下,就算是跑起來(lái)了;
但是扔到生產(chǎn)環(huán)境就掛了,what?各種錯(cuò)誤。。。

1.2、應(yīng)用之間需要隔離

兩個(gè)應(yīng)用運(yùn)行在一個(gè)服務(wù)器上,比如一個(gè)PHP,一個(gè).NET。
這兩個(gè)應(yīng)用各種的依賴(lài)軟件都安裝在同一個(gè)服務(wù)器上,可能就會(huì)造成各種沖突/無(wú)法兼容,這可能調(diào)試就非常麻煩了。

docker 就是為解決上方問(wèn)題出現(xiàn)的,一次封裝,到處運(yùn)行。
Linux 容器技術(shù)的出現(xiàn)解決了這樣的一個(gè)問(wèn)題,而 docker 就是在他的基礎(chǔ)上發(fā)展過(guò)來(lái)的。
將應(yīng)用運(yùn)行在 docker 容器上面,而docker 容器在任何操作系統(tǒng)上都是一致的,實(shí)現(xiàn)了跨平臺(tái)、跨服務(wù)器。

只需要一次配置好環(huán)境,切換別的機(jī)子上就可以一鍵部署好,大大簡(jiǎn)化了操作。

假設(shè):開(kāi)發(fā)環(huán)境裝了個(gè) redis 3.2 ,運(yùn)維環(huán)境裝了 4.2,可是 3.2 運(yùn)行沒(méi)問(wèn)題,但是在 4.2 就不好用了,但是既然開(kāi)發(fā)環(huán)境裝了 redis 3.2 了,運(yùn)維就沒(méi)必要重復(fù)裝了,開(kāi)發(fā)把 redis 打個(gè)鏡像,而運(yùn)維只需要裝個(gè) docker 環(huán)境,然后把鏡像一鍵部署即可。
放在以前,我們只需要把代碼扔給運(yùn)維,讓他去裝軟件,裝不好就啟動(dòng)不了。

話外語(yǔ):我的好朋友昆少,作為一個(gè)運(yùn)維,每次都要陪開(kāi)發(fā)加班上線項(xiàng)目,而且往往有些時(shí)候竟然是環(huán)境引起的,畢竟開(kāi)發(fā)本地用的 windows 環(huán)境,部署到 linux 就…

一句話概述:解決了運(yùn)行環(huán)境和配置問(wèn)題軟件容器,方便做持續(xù)集成并有助于整體發(fā)布的容器虛擬化技術(shù)。

2、能干嗎?

2.1、之前的虛擬機(jī)技術(shù):

資源占用多(特別吃?xún)?nèi)存)、冗余步驟多、啟動(dòng)慢;
虛擬機(jī)是一個(gè)連硬件都模擬的,比如打印機(jī)等等,是分鐘級(jí)別的,而 docker 是秒級(jí)別的

2.2、容器虛擬化技術(shù):

由于前面的虛擬器存在這些缺點(diǎn),linux 發(fā)展處另一種虛擬化技術(shù)—linux 容器;
不是模擬一個(gè)完整的操作系統(tǒng),而是對(duì)進(jìn)程進(jìn)行隔離。
有了容器,可以將軟件運(yùn)行所需要的資源打包一個(gè)隔離的容器中,容器與虛擬機(jī)不同,不需要捆綁一整套操作系統(tǒng),只需要軟件工作
所需的庫(kù)資源可設(shè)置。

docker 和傳統(tǒng)虛擬化方式的不同之處:

  • 傳統(tǒng)虛擬機(jī)技術(shù)是虛擬出一套硬件后,在其上運(yùn)行一個(gè)完整操作系統(tǒng),在該系統(tǒng)上再運(yùn)行所需要應(yīng)用進(jìn)程。
  • 容器的應(yīng)用進(jìn)程直接運(yùn)行于宿主的內(nèi)核,容器沒(méi)有自己的內(nèi)核,而且也沒(méi)有進(jìn)行硬件虛擬,因此容器更輕便。
  • 每個(gè)容器之間互相隔離,容器有自己的文件系統(tǒng),容器之間進(jìn)程不會(huì)互相影響,能區(qū)分計(jì)算資源。
  • 2.3、開(kāi)發(fā)/運(yùn)維

    一次構(gòu)建、隨處運(yùn)行
    更快應(yīng)用交付和部署、更快升級(jí)和擴(kuò)縮容、更簡(jiǎn)單的系統(tǒng)運(yùn)維、更搞笑的計(jì)算資源利用

    2.4、企業(yè)級(jí)

    新浪、美團(tuán)、阿里、京東等

    3、去哪下?怎么裝?

    docker.com docker-cn.com

    官網(wǎng)?no!

    3.1、安裝VM

    鏈接:https://pan.baidu.com/s/1c20sYm0ziaRyUsotbp0oOg 提取碼:o2m6

    3.2、添加docker

    鏈接:https://pan.baidu.com/s/1KwJM_mes51cvl0e0kava5Q 提取碼:n34r
    解壓鏡像后,直接執(zhí)行 vmx 后綴的文件。


    點(diǎn)擊后,vm 會(huì)檢測(cè)到運(yùn)行文件類(lèi)型,自行添加到 “我的計(jì)算機(jī)”列表:

    執(zhí)行“開(kāi)啟此虛擬機(jī)”:

    注意:需要在服務(wù)里開(kāi)啟 DHCP 服務(wù),該服務(wù)用于自動(dòng)分配 ip,開(kāi)啟該服務(wù)才能給虛擬機(jī)分配網(wǎng)絡(luò)

    用戶(hù)名:root 密碼:itcast

    ?

    3.4、docker 啟動(dòng)容器

    systemctl start docker

    3.5、運(yùn)行容器

    mysql
    docker run -di --name=tensquare_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root centos/mysql-57-centos7

    --name=數(shù)據(jù)庫(kù)名稱(chēng)
    -p 3306:3306 端口號(hào)
    MYSQL_ROOT_PASSWORD=密碼

    nginx
    docker run -p 80:80 --name ngx_demo -d nginx

    -p 80:80:將容器的80端口映射到主機(jī)的80端口
    --name mynginx:將容器命名為mynginx

    3.6、部分指令

    查看所有的容器:docker images


    查看運(yùn)行:docker ps -a

    暫停容器:docker stop 容器id/容器名稱(chēng)

    重新啟動(dòng)某一個(gè)容器:docker start 容器id/容器名稱(chēng)

    ?

    如果文章有錯(cuò)的地方歡迎指正,大家互相留言交流。習(xí)慣在微信看技術(shù)文章,想要獲取更多的Java資源的同學(xué),可以關(guān)注微信公眾號(hào):niceyoo

    posted @ 2019-05-06 22:20 niceyoo 閱讀(...) 評(píng)論(...) 編輯 收藏

    總結(jié)

    以上是生活随笔為你收集整理的开箱一个docker的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。