最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

本地使用docker打包部署鏡像的方法

 更新時(shí)間:2020年12月14日 15:26:37   作者:愛(ài)玲姐姐  
這篇文章主要介紹了本地使用docker打包部署鏡像的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

第一次在本地使用docker打包、部署鏡像

首先說(shuō)下我的筆記本系統(tǒng)是MACOS 10.15.4
我安裝的docker版本是v19.03.5

一、項(xiàng)目結(jié)構(gòu)如下:

這是一個(gè)react項(xiàng)目,打包后的靜態(tài)資源路徑是dist目錄。

在這里插入圖片描述

二、重點(diǎn)看Dockerfile文件和docker/nginx.conf文件

 1. Dockerfile是一個(gè)用來(lái)構(gòu)建鏡像的文本文件,詳細(xì)介紹可以參考鏈接:Docker Dockerfile

我的Dockerfile內(nèi)容如下:

FROM nginx
WORKDIR /usr/src/app/
COPY ./docker/nginx.conf /etc/nginx/conf.d/default.conf
COPY ./dist /usr/share/nginx/html/
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

Dockerfile中的大寫(xiě)單詞是命令,各個(gè)命令的含義解釋:

  • FROM:定制的鏡像都是基于 FROM 的鏡像,這里的 nginx 就是定制需要的基礎(chǔ)鏡像。后續(xù)的操作都是基于 nginx。
  • RUN:用于執(zhí)行后面跟著的命令行命令。有以下倆種格式:
  • WORKDIR:指定工作目錄。用 WORKDIR 指定的工作目錄,會(huì)在構(gòu)建鏡像的每一層中都存在。WORKDIR 指定的工作目錄,必須是提前創(chuàng)建好的。docker build 構(gòu)建鏡像過(guò)程中的,每一個(gè) RUN 命令都是新建的一層。只有通過(guò) WORKDIR 創(chuàng)建的目錄才會(huì)一直存在。
  • COPY:復(fù)制指令,從上下文目錄中復(fù)制文件或者目錄到容器里指定路徑。
  • EXPOSE:僅僅只是聲明端口。作用:幫助鏡像使用者理解這個(gè)鏡像服務(wù)的守護(hù)端口,以方便配置映射。在運(yùn)行時(shí)使用隨機(jī)端口映射時(shí),也就是 docker run -P 時(shí),會(huì)自動(dòng)隨機(jī)映射 EXPOSE 的端口。
  • CMD:類似于 RUN 指令,用于運(yùn)行程序,但二者運(yùn)行的時(shí)間點(diǎn)不同:CMD 在docker run 時(shí)運(yùn)行。RUN 是在 docker build。作用:為啟動(dòng)的容器指定默認(rèn)要運(yùn)行的程序,程序運(yùn)行結(jié)束,容器也就結(jié)束。CMD 指令指定的程序可被 docker run 命令行參數(shù)中指定要運(yùn)行的程序所覆蓋。注意:如果 Dockerfile 中如果存在多個(gè) CMD 指令,僅最后一個(gè)生效。

2. docker/nginx.conf

server {
  listen 80;
  # gzip config
  gzip on;
  gzip_min_length 1k;
  gzip_comp_level 9;
  gzip_types text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml;
  gzip_vary on;
  gzip_disable "MSIE [1-6]\.";
  client_max_body_size 100m;

  root /usr/share/nginx/html;

  location / {
    try_files $uri $uri/ /index.html;
  }
  location /api/ {
  	# 此處為后端地址
    proxy_pass http://www.XXX.com/;
  }
}

三、執(zhí)行docker build命令制作鏡像

我執(zhí)行的命令是:docker build -t mydocker .
-t : 為鏡像打一個(gè)tag,tag名稱為mydocker
不要忘了后面有個(gè)點(diǎn),表示在當(dāng)前路徑下制作鏡像

四、執(zhí)行docker run部署鏡像

我執(zhí)行的命令是:docker run -p 80:80 mydocker
-p 是指定映射到本機(jī)的端口
docker run -p 本機(jī)端口:鏡像端口 鏡像名

五、打開(kāi)localhost:80就可以看到項(xiàng)目啦

初次體驗(yàn)docker本地部署,很多原理和docker命令還不太清楚,以后還會(huì)進(jìn)一步學(xué)習(xí)~

補(bǔ)充一個(gè)小問(wèn)題,我今天突然無(wú)法將鏡像推到公司的私有云了,是網(wǎng)絡(luò)環(huán)境有問(wèn)題,就讓同事幫忙推一下。
我先將打包好的鏡像保存到本地:

docker save 10.10.10.52:5000/zhanwu-study/prod:4.1.2 > study.tar

然后將生成到當(dāng)前目錄下的study.tar通過(guò)釘釘發(fā)給同事,他下來(lái)study.tar到本地,然后執(zhí)行:

docker load < study.tar

更新一下版本(沒(méi)有生成新的鏡像,兩個(gè)版本是同一個(gè)鏡像):

docker tag 10.10.10.52:5000/zhanwu-study/prod:4.1.2 10.10.10.52:5000/zhanwu-study/prod:4.1.3

然后推到私有云:

docker push 10.10.10.52:5000/zhanwu-study/prod:4.1.3

到此這篇關(guān)于本地使用docker打包部署鏡像的方法的文章就介紹到這了,更多相關(guān)本地docker打包部署鏡像內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解docker搭建redis集群的環(huán)境搭建

    詳解docker搭建redis集群的環(huán)境搭建

    本篇文章主要介紹了詳解docker搭建redis集群的環(huán)境搭建,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • Docker 徹底刪除私有庫(kù)鏡像的操作

    Docker 徹底刪除私有庫(kù)鏡像的操作

    這篇文章主要介紹了Docker 徹底刪除私有庫(kù)鏡像的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • docker在已有的tomcat鏡像上打新的鏡像的Dockerfile編寫(xiě)說(shuō)明介紹

    docker在已有的tomcat鏡像上打新的鏡像的Dockerfile編寫(xiě)說(shuō)明介紹

    這篇文章主要介紹了docker在已有的tomcat鏡像上打新的鏡像的Dockerfile編寫(xiě)說(shuō)明介紹,需要的朋友可以參考下
    2016-10-10
  • docker容器使用GPU方法實(shí)現(xiàn)

    docker容器使用GPU方法實(shí)現(xiàn)

    本文主要介紹了docker容器使用GPU方法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • win10環(huán)境下安裝Docker的實(shí)現(xiàn)

    win10環(huán)境下安裝Docker的實(shí)現(xiàn)

    這篇文章主要介紹了win10環(huán)境下安裝Docker的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • docker使用jdk21啟動(dòng)jar包報(bào)錯(cuò)的解決方案

    docker使用jdk21啟動(dòng)jar包報(bào)錯(cuò)的解決方案

    這篇文章主要介紹了docker使用jdk21啟動(dòng)jar包報(bào)錯(cuò)的解決方案,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • 使用Docker容器部署MongoDB并支持遠(yuǎn)程訪問(wèn)及遇到的坑

    使用Docker容器部署MongoDB并支持遠(yuǎn)程訪問(wèn)及遇到的坑

    MongoDB是一個(gè)介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的,今天通過(guò)本文給大家介紹使用Docker容器部署MongoDB并支持遠(yuǎn)程訪問(wèn)及遇到的坑,感興趣的朋友一起看看吧
    2022-07-07
  • docker?exec使用-it操作圖文詳解

    docker?exec使用-it操作圖文詳解

    這篇文章主要介紹了docker?exec使用-it操作的相關(guān)資料,主要是使用?docker?exec?-it?CONTAINER_ID?bash命令進(jìn)入正在運(yùn)行的Docker容器的終端,并保持終端的輸入形式,需要的朋友可以參考下
    2025-03-03
  • docker部署tig監(jiān)控服務(wù)教程

    docker部署tig監(jiān)控服務(wù)教程

    本文介紹了使用TIG(Telegraf-InfluxDB-Grafana)架構(gòu)進(jìn)行服務(wù)監(jiān)控的方法,通過(guò)Docker Compose快速搭建該監(jiān)控體系,包括Telegraf、InfluxDB和Grafana的安裝和配置,Telegraf用于數(shù)據(jù)采集,InfluxDB用于存儲(chǔ)數(shù)據(jù),Grafana用于數(shù)據(jù)可視化,通過(guò)配置文件和官方文檔
    2024-12-12
  • Docker報(bào)錯(cuò)Operation?not?permitted問(wèn)題的解決方法

    Docker報(bào)錯(cuò)Operation?not?permitted問(wèn)題的解決方法

    剛開(kāi)始接觸Docker的朋友經(jīng)常會(huì)遇到問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于Docker報(bào)錯(cuò)Operation?not?permitted問(wèn)題的解決方法,需要的朋友可以參考下
    2023-02-02

最新評(píng)論

江安县| 潮安县| 广德县| 莱芜市| 洪雅县| 连平县| 兰州市| 贵溪市| 陕西省| 深州市| 疏勒县| 景德镇市| 辽宁省| 遂平县| 盐边县| 景谷| 峨边| 重庆市| 高邑县| 珲春市| 沙洋县| 望都县| 乌海市| 分宜县| 四子王旗| 北碚区| 元江| 阜宁县| 平阳县| 霍林郭勒市| 胶南市| 扬中市| 娄烦县| 沅陵县| 凌云县| 普安县| 鲜城| 托克托县| 芜湖县| 堆龙德庆县| 隆回县|