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

本地使用docker打包部署镜像的方法,第1张

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

本文的重点是详细介绍docker的本地应用来打包和部署映像。原文根据示例代码非常详细,对大家的学习培训或者工作都有一定的参考价值。有必要的朋友陪我去了解一下。

第一次在本地使用docker来打包和部署映像。

首先我的笔记本系统是MACOS10.15.4
我安装的docker版本号是v19.03.5

一、新项目构造以下:

这是一个新的react项目,打包的静态数据资源路径是dist目录。

二、关键看Dockerfile文档和docker/nginx.conf文档

1.Dockerfile是用于构建镜像的文本文档。详细解释请参考连接:Dockerfile。

我的Dockerfile文件内容如下:

FROMnginx WORKDIR/usr/src/app/ COPY./docker/nginx.conf/etc/nginx/conf.d/default.conf COPY./dist/usr/share/nginx/html/ EXPOSE80 CMD["nginx","-g","daemonoff;"]

Dockerfile中的英文大写英文单词是命令,每个命令的含义表示如下:

  • FROM:定制的图片都是基于FROM图片,这里的nginx是定制所必须的基础图片。事后的实际 *** 作全部基于nginx。
  • RUN:用于执行命令行命令,后跟。有两种文件格式:
  • 工作目录:指定工作目录。WORKDIR指定的工作目录将存在于镜像的每一层。必须事先建立WORKDIR指定的工作目录。在dockerbuild镜像构建的整个过程中,每一个RUN命令都是一个新创建的层。只有根据WORKDIR建立的目录才会一直存在。
  • COPY:copy命令,将文档或目录从上下文目录复制到容器中的指定路径。
  • EXPOSE:就是声明端口而已。功效:协助影像用户了解本影像服务项目的守护端口,以便于配备投影。在运行过程中应用任何端口投影时,即使用dockerrun-P时,EXPOSE端口会自动任意投影。
  • CMD:类似于RUN命令,用来 *** 作程序流程,但两种 *** 作的时间点不同:docker运行时CMD运行。运行在docker版本中。功效:为启动的容器指定要运行的默认程序流程,当程序结束时,容器将结束。CMD命令指定的程序流可以被dockerrun命令行主参数中指定的要运行的程序流覆盖。注意:如果Dockerfile中有多个CMD命令,那么只有最后一个命令会生效。
  • 2.docker/nginx.conf

    server{ listen80; #gzipconfig gzipon; gzip_min_length1k; gzip_comp_level9; gzip_typestext/plaintext/csstext/javascriptapplication/jsonapplication/javascriptapplication/x-javascriptapplication/xml; gzip_varyon; gzip_disable"MSIE[1-6]\."; client_max_body_size100m; root/usr/share/nginx/html; location/{ try_files$uri$uri//index.html; } location/api/{ #这里为后端开发详细地址 proxy_passhttp://www.XXX.com/; } } 三、实行dockerbuild命令制做镜像

    我的命令是:dockerbuild-tmydoker。
    -t:给镜子做一个标签,标签的名字叫mydoker
    。别忘了后面有个点,表示镜子是用现在的方法做的。

    四、实行dockerrun布署镜像

    我的命令是:DockerRun-p80:80我的Docker
    -p是指定投射到这个设备的端口
    dockerrun-p这个设备端口:镜像端口镜像名称。

    五、开启localhost:80就可以见到新项目啦

    第一次感受docker的本地部署,很多基本原理和docker命令还不清楚。之后我会继续学习,进一步训练~

    补一个小问题,今天突然不能把镜像下推到企业的私有云存储了。如果网间有什么问题空,需要朋友帮忙推一下。
    我将首先在本地存储打包的图像:

    dockersave10.10.10.52:5000/zhanwu-study/prod:4.1.2>study.tar

    然后,在今天的目录中形成的study.tar,按照钉子把卡片打孔,寄给了一个朋友。他去了study.tar,去了当地,然后实施了:

    dockerload<study.tar

    升级版本号(不形成新镜像,两个版本号是同一个镜像):

    dockertag10.10.10.52:5000/zhanwu-study/prod:4.1.210.10.10.52:5000/zhanwu-study/prod:4.1.3

    然后下推私有云存储:

    dockerpush10.10.10.52:5000/zhanwu-study/prod:4.1.3

    到目前为止,本文已经详细介绍了通过本地docker打包和部署映像的方法。有关通过本地docker打包和部署映像的大量信息,请搜索您以前的文章或再次访问下面的相关文章。期待你以后的申请!

    欢迎分享,转载请注明来源:内存溢出

    原文地址: http://outofmemory.cn/zz/774032.html

    (0)
    打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
    上一篇 2022-05-03
    下一篇 2022-05-03

    发表评论

    登录后才能评论

    评论列表(0条)

    保存