成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

docker構(gòu)建鏡像

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

一、前言

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

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

該過程中用到的技術(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、配置文件說明:

該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鏡像來拉起服務(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、啟動一個(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配置文件

和我們正常部署是一樣的,用來轉(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集群的部署


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


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

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/127951.html

相關(guān)文章

  • docker命令

    摘要:,自動構(gòu)建,表示這個(gè)鏡像由的自動構(gòu)建流程構(gòu)建的。保存的目錄稱為上下文,會在構(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 評論0 收藏0
  • [Docker 官方文檔] 理解 Docker

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

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

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

    sf_wangchong 評論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)友 評論0 收藏3004
  • 30 分鐘快速入門 Docker 教程

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

    LucasTwilight 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<