成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

docker構(gòu)建鏡像

社區(qū)管理員 / 653人閱讀

一、前言

保持線上項(xiàng)目穩(wěn)定運(yùn)行是很重要的,為了達(dá)到服務(wù)可用性在99.9%,也為了減少開發(fā)人員在項(xiàng)目部署時(shí)耗費(fèi)大量精力,可以嘗試自動(dòng)化發(fā)布

自動(dòng)化部署涉及到的配置比較多,每個(gè)環(huán)節(jié)需要掌握的知識(shí)也不同,所以分開寫

該過程中用到的技術(shù)棧webpack docker nginx shell

二、實(shí)踐環(huán)境

  • mac

  • node > 10.11.1

  • docker > 20.0.0

三、提前準(zhǔn)備的內(nèi)容

  • 通過create-react-app構(gòu)建的一個(gè)前端項(xiàng),這里起名項(xiàng)目myweb

  • 本地安裝docker

四、構(gòu)建docker鏡像

首先通過鏡像打包前端部署包,在項(xiàng)目根目錄下,新建Dockerfile文件

1、Dockerfile

FROM node:10-alpine as builder WORKDIR /data/myweb COPY . . RUN npm install --registry=https://registry.npm.taobao.org --no-package-lock --no-save RUN yarn build FROM nginx:alpine as myweb RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \     && echo "Asia/Shanghai" > /etc/timezone  WORKDIR /data/myweb COPY ./nginx /etc/nginx/conf.d COPY  --from=builder /data/myweb/build /data/myweb EXPOSE 80,443 復(fù)制代碼

2、配置文件說(shuō)明:

該Dockerfile干了兩件事,

第一是將前端項(xiàng)目打包到node鏡像中,這里起名builder

第二是拉取nginx鏡像,將文件的nginx配置鏡像覆蓋,將builder鏡像中打包的文件復(fù)制到nginx鏡像的/data/myweb文件中,執(zhí)行docker build -t myweb .

此時(shí)我們執(zhí)行打包命令,得到的兩個(gè)鏡像,一個(gè)打包后的node鏡像,一個(gè)nginx鏡像,我們只需要nginx鏡像來(lái)拉起服務(wù)

3、執(zhí)行命令

// 1、docker通過Dockerfile構(gòu)建鏡像 `docker build -t dockerName:1.0.0 .` // 2、查看當(dāng)前存在鏡像 docker images // 3、刪除docker鏡像 docker rmi dockerImageId // 4、刪除docker容器 docker rm dockerContainerId // 5、啟動(dòng)一個(gè)docker容器 docker run -d -p 8000:80 --name frontend [dockerImageName] // 6、查看運(yùn)行中的容器 docker ps 復(fù)制代碼

4、運(yùn)行中的服務(wù)

我們可以看到當(dāng)前運(yùn)行中的容器

image.png

在瀏覽器訪問http://localhost:8000即可看到當(dāng)前通過docker部署的服務(wù)

五、nginx配置文件

和我們正常部署是一樣的,用來(lái)轉(zhuǎn)發(fā)靜態(tài)資源 在根目錄下新建nginx文件夾,/nginx/default.conf

server {     listen 80;     server_name localhost;     location / {         root /data/myweb;         index index.html;     }     error_page 500 502 503 504 /50x.html;     location = /50x.html {         root /usr/share/nginx/html;     } } 復(fù)制代碼

這樣我們完成了第一步,通過docker部署我們的服務(wù)。

如果我們直接通過docker部署前端也是可以的。

接著,有了docker部署的基礎(chǔ),

接著繼續(xù)通過k8s集群的部署


作者:前端中后臺(tái)
鏈接:https://juejin.cn/post/6962037427108380709
來(lái)源:稀土掘金
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。


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

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/127951.html

相關(guān)文章

  • docker命令

    摘要:,自動(dòng)構(gòu)建,表示這個(gè)鏡像由的自動(dòng)構(gòu)建流程構(gòu)建的。保存的目錄稱為上下文,會(huì)在構(gòu)建鏡像時(shí)將構(gòu)建的上下文和該上下文的文件和目錄上傳到守護(hù)進(jìn)程??捎寐赃^緩存查看鏡像的每一層參考第一本書 docker入門 主要是docker使用命令 docker守護(hù)進(jìn)程 修改守護(hù)進(jìn)程的網(wǎng)絡(luò) sudo docker daemon -H tcp://0.0.0.0:2375 這條命令將docker守護(hù)進(jìn)程 //...

    Tonny 評(píng)論0 收藏0
  • [Docker 官方文檔] 理解 Docker

    摘要:將一個(gè)輕量級(jí)的容器虛擬化平臺(tái)和一組標(biāo)準(zhǔn)工作流程工具進(jìn)行集成,來(lái)幫助你方便地管理和部署應(yīng)用。主要包括哪些組件主要包括兩個(gè)組件開源的容器虛擬化平臺(tái)用于分享和管理容器的軟件即服務(wù)平臺(tái)。 【編者的話】本文來(lái)自 Docker 的官方文檔,詳細(xì)介紹了 Docker 的體系結(jié)構(gòu)、重要概念、內(nèi)部工作機(jī)理等內(nèi)容,推薦不了解 Docker 內(nèi)部原理的同學(xué)閱讀。 什么是 Docker? Docker 是...

    cncoder 評(píng)論0 收藏0
  • 都9102年了,還不會(huì)Docker?10分鐘帶你從入門操作到實(shí)戰(zhàn)上手

    摘要:聯(lián)調(diào)測(cè)試,無(wú)需依賴他人。針對(duì)以上問題,有兩種解決方法,一個(gè)是自己搭建私有服務(wù),另一個(gè)是用云服務(wù)的鏡像管理平臺(tái)如阿里云的容器鏡像服務(wù)。利用,先對(duì)阿里云的服務(wù)進(jìn)行登錄。推送后,就能在阿里云的倉(cāng)庫(kù)上看到這個(gè)鏡像。 Docker簡(jiǎn)述 Docker是一種OS虛擬化技術(shù),是一個(gè)開源的應(yīng)用容器引擎。它可以讓開發(fā)者將應(yīng)用打包到一個(gè)可移植的容器中,并且該容器可以運(yùn)行在幾乎所有l(wèi)inux系統(tǒng)中(Windo...

    sf_wangchong 評(píng)論0 收藏0
  • Docker技術(shù)之構(gòu)建鏡像和網(wǎng)絡(luò)模式解析

    Docker技術(shù)之構(gòu)建鏡像和網(wǎng)絡(luò)模式解析 img{ display:block; margin:0 auto !important; width:100%; } body{ width:75%; ...

    不知名網(wǎng)友 評(píng)論0 收藏3004
  • 30 分鐘快速入門 Docker 教程

    摘要:分鐘快速入門教程一歡迎來(lái)到世界與虛擬化在沒有的時(shí)代,我們會(huì)使用硬件虛擬化虛擬機(jī)以提供隔離。倉(cāng)庫(kù)分為公開倉(cāng)庫(kù)和私有倉(cāng)庫(kù),最大的公開倉(cāng)庫(kù)是官方倉(cāng)庫(kù),國(guó)內(nèi)的公開倉(cāng)庫(kù)也有很多選擇,例如阿里云等。 30 分鐘快速入門 Docker 教程 一、歡迎來(lái)到 Docker 世界 1. Docker 與虛擬化 在沒有 Docker 的時(shí)代,我們會(huì)使用硬件虛擬化(虛擬機(jī))以提供隔離。這里,虛擬機(jī)通過在操作系...

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

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

0條評(píng)論

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