使用Docker完成前端部署详细图文教程

 更新时间:2023年09月17日 09:13:19   作者:m0_59757074  
这篇文章主要给大家介绍了关于使用Docker完成前端部署的相关资料,Docker变得越来越流行,它可以轻便灵活地隔离环境,进行扩容,运维管理,文中通过图文介绍的非常详细,需要的朋友可以参考下

1.打包前端项目

1. 通过项目中的package.json文件,找到“build”运行进行打包

2. 打包成功后生成dist文件夹,就是打包好的项目

请添加图片描述

3. 在根目录中创建一个Docker文件夹中创建nginx.conf配置文件, 同时在根目录中创建一个Dockerfile文件

图例:

Image

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]\.";
    root /usr/share/nginx/html;
    include /etc/nginx/mime.types;
    location / {
        try_files $uri /index.html;
}

1) gzip on; - 启用Gzip压缩功能。

2) gzip_min_length 1k; - 指定压缩的最小文件大小。只有大于等于1千字节的文件才会被压缩。

3) gzip_comp_level 9; - 设置Gzip压缩的级别。级别从1到9,9为最高压缩比,但也会消耗更多的CPU资源。

4) gzip_types - 指定需要进行Gzip压缩的文件类型。在这个例子中,配置了多种类型的文件,包括纯文本文件(text/plain)、CSS文件(text/css)、JavaScript文件(text/javascript、application/json、application/javascript、application/x-javascript)以及XML文件(application/xml)。

5) gzip_vary on; - 在HTTP响应头中添加Vary标头,以通知缓存服务器根据Accept-Encoding头来提供正确的压缩版本。

6) gzip_disable "MSIE [1-6]\.”; - 禁用特定的浏览器压缩。在这个例子中,它禁用了Internet Explorer 1至6版本的Gzip压缩。这是因为早期版本的IE在处理Gzip压缩时可能存在兼容性问题。

Dockerfile

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

1) FROM nginx : 安装nginx

2) WORKDIR : 工作目录,容器中执行命令时的默认位置

3) COPY :拷贝,从执行目录拷贝指定文件打到容器中的指定目录

4) EXPOSE :声明容器内的服务将监听的端口(指令仅仅是一种文档化的操作,它并不会自动在容器启动时打开这些端口或配置网络连接)

5) CMD 指定容器启动时要执行的默认命令或可执行文件的指令

4.压缩文件为了上传到服务器(按照上图为例)

把三个红框,压缩成一个压缩包。

Image

2.服务器项目上线

1.docker安装

参考文档:https://www.jb51.net/article/153865.htm

2.压缩包上传到服务器

把打包好的user-center-frontend.zip上传到服务器的指定目录,这里以 /root/myapp 目录为例

1.创建myapp目录

mkdir /root/myapp 

2.把压缩包放在目录里

3.进到myapp文件夹,解压文件

unzip user-center-frontend.zip -d user-center-frontend

4.进入user-center-frontend文件夹执行命令,后面"."不要忽略

docker build -t user-center-frontend:v0.0.1 .

docker build -t 镜像名称:版本号 .

5.运行docker镜像

1.查看docker 镜像
docker images
2.根据打包好的镜像,并运行docker
docker run -d -p 80:80 user-center-frontend:v0.0.1 
3.查看容器运行状态
docker ps

项目部署成功

总结

到此这篇关于使用Docker完成前端部署的文章就介绍到这了,更多相关Docker前端部署内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • docker配置node项目的实现步骤

    docker配置node项目的实现步骤

    本文主要介绍了docker配置node项目的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-01-01
  • 怎样获取docker动态分配的port

    怎样获取docker动态分配的port

    这篇文章给大家主要介绍了如何获取docker动态分配的port,文中通过分析、解决以及后续可能遇到的问题都给大家详细介绍了,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-10-10
  • 使用Docker Compose搭建部署ElasticSearch的配置过程

    使用Docker Compose搭建部署ElasticSearch的配置过程

    Elasticsearch使用的是一种名为倒排索引的数据结构,这一结构的设计可以允许十分快速地进行全文本搜索,本文重点给大家介绍使用Docker Compose搭建部署ElasticSearch的配置过程,感兴趣的朋友一起看看吧
    2022-02-02
  • docker打包node项目的过程讲解

    docker打包node项目的过程讲解

    今天小编就为大家分享一篇关于docker打包node项目的过程讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • docker部署zookeeper集群方式(单主机、多主机)

    docker部署zookeeper集群方式(单主机、多主机)

    这篇文章主要介绍了docker部署zookeeper集群方式(单主机、多主机),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • docker用root进入容器的操作

    docker用root进入容器的操作

    这篇文章主要介绍了docker用root进入容器的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 利用Docker搭建Nexus私有仓库实现Maven私服

    利用Docker搭建Nexus私有仓库实现Maven私服

    Maven大家应该都比较熟了,我这里就用安卓人狂喜的Gradle来演示一下,在build.gradle中编写脚本即可上传,接下来通过本文给大家介绍下利用Docker搭建Nexus私有仓库实现Maven私服的问题,感兴趣的朋友一起看看吧
    2022-01-01
  • 详解用Docker搭建外部可以访问的mysql

    详解用Docker搭建外部可以访问的mysql

    这篇文章主要介绍了详解用Docker搭建外部可以访问的mysql,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • 如何解决Docker启动问题docker is starting…

    如何解决Docker启动问题docker is starting…

    这篇文章主要给大家介绍了关于如何解决Docker启动问题docker is starting…的相关资料,文中通过图文将解决的过程介绍的非常详细,需要的朋友可以参考下
    2023-10-10
  • docker-compose安装yml文件配置方式

    docker-compose安装yml文件配置方式

    这篇文章主要介绍了docker-compose安装,yml文件配置,离线安装及在线安装的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12

最新评论