dockerfile 部署前端vue项目

#在服务器工作目录下创建如下结构目录

conf 目录下创建nginx.conf文件 

nginx.conf 文件编写


user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

  
    server {
        listen       80;
        listen  [::]:80;
		client_max_body_size 20m; 
         client_body_buffer_size 1m;
        #access_log  /var/log/nginx/host.access.log  main;

        location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }
        

        #生产环境接口反向代理配置
        location /stage-api/ {
            #保留代理之前的host 包含客户端真实的域名和端口号
            proxy_set_header    Host  $http_host;
            #保留代理之前的真实客户端ip
            proxy_set_header    X-Real-IP  $remote_addr;
            #这个Header和X-Real-IP类似,但它在多级代理时会包含真实客户端及中间每个代理服务器的IP
            proxy_set_header    X-Forwarded-For  $proxy_add_x_forwarded_for;
            #表示客户端真实的协议(http还是https)
            proxy_set_header X-Forwarded-Proto $scheme;

            #写后端服务端口
            proxy_pass http://192.168.1.164:29097/;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }

    }

}

Dockerfile 文件编写

FROM nginx

# 作者信息
MAINTAINER lxp

# 挂载目录
VOLUME /usr/share/nginx/html

# 复制conf文件到路径
COPY ./conf/nginx.conf /etc/nginx/nginx.conf

# 复制html文件到路径
COPY ./html /usr/share/nginx/html

将VUE项目打包并且上传至服务器中html目录下

打包后文件在dist下

将dist目录下所有文件上传至html中

在docker 工作目录下运行命令

docker build -t zhongbeida-nginx-test:v1 .

!!! 一定注意后面有一个点  !!!

docker 会基于dockerfile文件中得配置  对项目进行生成镜像

-t  后面是自定义得镜像名称
冒号后是自定义得镜像版本

打包镜像后  启动容器

docker run -d --name zhongbeida-font-nginx -p 28086:80  --restart always zhongbeida-nginx-test:v1



--name 后面是你要对启动得容器得命名


-p 冒号前面是你要映射得端口号 

最后是上一步打包得镜像名称和版本

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值