【Docker】docker镜像+nginx部署vue项目:

文章目录


一、文档:

【1】菜鸟教程:https://www.runoob.com/docker/docker-tutorial.html

【2】Docker部署Vue项目的项目实践:https://www.jb51.net/server/292938nb9.htm

【3】Docker部署vue项目:https://www.cnblogs.com/newcapecjmc/p/16443866.html

二、打包vue项目:
bash 复制代码
yarn build
三、配置nginx:
bash 复制代码
docker pull nginx  #终端=》拉取nginx镜像
bash 复制代码
server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    access_log  /var/log/nginx/host.access.log  main;
    error_log  /var/log/nginx/error.log  error;

    # location / {
    #     root   /usr/share/nginx/html;
    #     index  index.html index.htm;
    #     #  注意⚠:如果vue-router使用的是history模式,try_files $uri $uri/ /index.html;  非常重要!!!
    #     # 如果使用了hash模式,可以省略这个
    #     try_files $uri $uri/ /index.html;
    # }
    location /keda {
    	#注意:此时路径需要加上/keda
        alias  /usr/share/nginx/html/keda/;
        index  index.html index.htm;
        #解决404错误
        try_files $uri $uri/ /keda/index.html;
    }

    #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:
bash 复制代码
# 设置基础镜像
FROM nginx
# 定义作者
MAINTAINER SunPeng <3246756017@qq.com>
#指定环境变量
ENV LANG en_US.UTF-8
#将dist文件中的内容复制到 /usr/share/nginx/html/ 这个目录下面(注意这个目录别乱写)
COPY /dist /usr/share/nginx/html/keda/
#用本地的 default.conf 配置来替换nginx镜像里的默认配置
COPY /nginx/default.conf /etc/nginx/conf.d/default.conf
#暴露80端口,供容器外部连接使用
EXPOSE 80
ENTRYPOINT nginx -g "daemon off;" 
五、构建镜像:
bash 复制代码
docker build -t 镜像名称xxx .  #注意 . 不能缺
#如
docker build -t kdv2 .   #终端=》构建镜像
六、运行容器:
bash 复制代码
docker run --name  容器名称(每次运行容器不同名称)xxx -d -p 9020:80 镜像名称xxx(上一步生成镜像的名称)
#如
docker run --name  keda -d -p 9002:80  kdv2   #终端=》运行容器
或者
七、最终效果:

打开前端项目:localhost:9002/keda

相关推荐
学Linux的语莫13 分钟前
Ansible使用简介和基础使用
linux·运维·服务器·nginx·云计算·ansible
天天进步201517 分钟前
Vue+Springboot用Websocket实现协同编辑
vue.js·spring boot·websocket
qq_3129201122 分钟前
docker 部署 kvm 图形化管理工具 WebVirtMgr
运维·docker·容器
踏雪Vernon23 分钟前
[OpenHarmony5.0][Docker][环境]OpenHarmony5.0 Docker编译环境镜像下载以及使用方式
linux·docker·容器·harmonyos
疯狂的沙粒37 分钟前
如何在Vue项目中应用TypeScript?应该注意那些点?
前端·vue.js·typescript
小镇程序员1 小时前
vue2 src_Todolist全局总线事件版本
前端·javascript·vue.js
条纹布鲁斯1 小时前
dockerdsktop修改安装路径/k8s部署wordpress和ubuntu
docker·kubernetes
想自律的露西西★2 小时前
用el-scrollbar实现滚动条,拖动滚动条可以滚动,但是通过鼠标滑轮却无效
前端·javascript·css·vue.js·elementui·前端框架·html5
白墨阳2 小时前
vue3:瀑布流
前端·javascript·vue.js
工业3D_大熊3 小时前
3D可视化引擎HOOPS Luminate场景图详解:形状的创建、销毁与管理
java·c++·3d·docker·c#·制造·数据可视化