docker部署前端代码

该文详细介绍了如何使用Docker部署前端打包后的dist文件夹,包括创建Dockerfile,复制配置文件,解压dist,构建镜像以及运行容器的步骤。同时提到了可能遇到的前端资源路径问题和解决方法,以及一些常用的Docker管理命令。
摘要由CSDN通过智能技术生成

前言

用最简单的步骤记录一下docker部署前端打包好的dist文件夹

步骤

  1. 确保Linux上docker已经安装,可以使用docker version查看。
  2. 将Dockerfile、nginx.conf、dist.zip三个文件上传到Linux服务器上,例如上传到/home/web下,注意Dockerfile文件中COPY和ADD命令用的相对路径。
  • Dockerfile文件内容如下:
FROM nginx:1.23.1

COPY nginx.conf /etc/nginx/nginx.conf  #这里是将自己写好的Nginx配置文件替换容器中的Nginx配置文件
ADD dist /usr/share/nginx/html/        #这里是将前端解压后的dist文件夹上传到容器Nginx的html文件夹下
  • nginx.conf截取主要配置如下
server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            #root   html;
            root   /usr/share/nginx/html;
            index  index.html index.htm;


            try_files $uri /index.html;

            # fix 304
            expires -1;
            if_modified_since off;
            add_header Last-Modified "";
            add_header Cache-Control no-cache;
            etag off;
        }
}
  1. 将前端dist.zip使用命令unzip dist.zip解压,如果提交没有unzip命令,就使用yum install unzip安装,或是下载离线安装包进行安装。
  2. 在/home/web目录下执行 docker build -t imageName:v1 . ,其中imageName是自己起的镜像名,v1是版本号,这步是生成镜像。
  3. 在/home/web目录下执行 docker run -d -p 38090:80 --name containerName imageName:v1 ,其中containerName 是自己起的容器名,imageName是上一步起的镜像名,38090是自己定义的端口号,注意不要用已经占用的端口。
  4. 然后浏览器测试前端是否正常启动http://服务器IP:38090/路由地址
  5. 如果不好使,可以看下容器日志,在/var/lib/docker/containers/文件夹下是以容器id命名的文件夹,找到对应的容器日志查看问题。

后记

  • 前端开发的时候,资源的路径可能存放不同,部署后可能访问不到,页面打不开,这就要具体和前端沟通,调整前端路径,或是通过修改nginx.conf配置文件,以及调整前端代码放置在Nginx的html文件夹下的目录。
  • 这里记录几个还可能用到的命令
docker ps            #查看容器命令
docker rm 容器id     #删除容器
docker stop 容器id   #停容器
docker images        #查看镜像
docker rmi 镜像id     #删除镜像
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于前端应用的Docker部署,你可以按照以下步骤进行操作: 1. 创建一个Dockerfile:在你的前端项目根目录下创建一个名为 `Dockerfile` 的文件。 2. 在Dockerfile中定义基础镜像:使用一个适合你的前端应用的基础镜像,比如 `nginx` 或者 `node`。例如,如果你的前端应用是基于Node.js的,可以选择一个包含Node.js环境的镜像。 3. 复制代码到镜像中:使用`COPY`命令将你的前端项目代码复制到镜像中的合适位置。通常情况下,你需要将你的代码复制到Nginx或者Node.js服务器的默认网站目录中。 4. 安装依赖:如果你的前端项目依赖于某些包或者库,你需要在Dockerfile中使用适当的命令来安装这些依赖。 5. 暴露端口:如果你的前端应用监听了某个特定的端口,你需要在Dockerfile中使用`EXPOSE`命令来暴露该端口。 6. 运行启动命令:在Dockerfile中使用`CMD`或者`ENTRYPOINT`命令来定义容器启动时要执行的命令。对于Nginx镜像,通常只需要启动Nginx服务器即可;而对于Node.js镜像,你可能需要运行一些自定义的启动脚本。 7. 构建镜像:在项目根目录下,运行 `docker build` 命令来构建Docker镜像。例如:`docker build -t my-frontend-app .` (注意后面的点表示当前目录)。 8. 运行容器:使用 `docker run` 命令来运行你刚刚构建的镜像,并将其映射到主机的某个端口。例如:`docker run -p 8080:80 my-frontend-app`(将容器的80端口映射到主机的8080端口)。 这样,你的前端应用就会在Docker容器中运行起来了。你可以通过访问 `http://localhost:8080` 来查看应用的界面。 希望这些步骤对你有所帮助!如有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值