当前位置: 首页 > news >正文

docker 搭建 vue3 + vite

vue3发布了,今天就分享一下我使用docker 搭建 vue3 + vite 开发环境。至于为什么使用docker搭建,因为多版本可以快速切换,和本地环境避免冲突。好了话不多说我们开始吧。

1. 准备资料

   Docker Desktop  +  wsl2   +  ubuntu 

下载地址 : https://www.docker.com/products/docker-desktop

2. 编写docker node镜像运行代码

新建一个 install-node.sh 文件如下, 其中 ~/www/vue3 是本机地址, /home/node/app 是镜像内部运行地址, 镜像node 版本 16.3.0  , --name node16  给容器命名 node16 

install-node.sh

#!/bin/bash

docker run -it --rm --name node16 - v ~/www/vue3:/home/node/app node:16.3.0

运行结果

3. 运行镜像 安装 vue3 + vite

sh install-node.sh

    打开  Docker Desktop 点击箭头打开进入node 容器

进入node容器

    依次执行 ,把 <project-name> 替换成项目名称

cd /home/node/app

npm config set registry https://registry.npm.taobao.org/

npm init @vitejs/app <project-name>

cd <project-name>

npm install

 npm run dev

例如 :


这里选择 vue


继续选择vue安装完成
安装完成

cd my-vue3



安装成功了

运行 npm install 安装vue3的依赖

运行 npm run dev 启动


启动完成得到如下目录


这就是vue3的项目目录了

4. 编写docker-compose.yml

在my-vue3外层目录创建 docker-compose.yml 文件

vue3/docker-compose.yml

version: "2"

services:

  node:

    image: "node:12.0.0"

    user: "root"

    working_dir: /home/node/app

    environment:

      -  NODE_ENV=development

    volumes:

      -  ./my-vue3:/home/node/app

    ports:

      -  "3000:3000"

    command: "npm run dev"

完成之后 执行  docker-compose up -d   启动服务

修改 vite.config.js 监听 地址  host:'0.0.0.0'

然后访问 http://localhost:3000/



成功进入  尝试热重载完美运行,保存后自动更新


5. 总结

1. docker部署应用, 最优解还是用 docker run 命令直接进入容器,然后跟着文档一步步操作,直至代码可运行,

2. docker compose 可以和开发工具绑定,一键启动。

3. 尝试过使用.sh 用docker compose 直接部署,结果不令人满意。

4. 遇到,权限问题 通过 sudo chmod -R 777 my-vue3 解决


最后编辑于:2024-09-27 20:39:12


喜欢的朋友记得点赞、收藏、关注哦!!!

http://www.lryc.cn/news/458950.html

相关文章:

  • 【网易云音乐】--源代码分享
  • 股市大涨下的会展业创新者
  • 工具篇-完整的 Git 项目管理工具教程(在命令框中使用 Git、在 IDEA 中使用 Git)
  • 关于Amazon Linux 2023的版本及包管理器
  • Java面向对象编程--高级
  • Vert.x,Web - 静态资源/模板
  • OpenAI今天Open了一下:开源多智能体框架Swarm
  • 车辆重识别(2021NIPS无分类器扩散指南)论文阅读2024/10/08
  • JavaSE——认识异常
  • 嵌入式数据结构中顺序栈用法
  • PE结构之绑定导入表
  • 【python学习】1-2 配置python系统环境变量
  • 日均千万订单的交易平台设计稿
  • 如何在 iPad 上恢复已删除的历史记录?
  • Haar cascade训练人脸小模型做人脸辨别
  • DBA | 如何将 .mdf 与 .ldf 的数据库文件导入到SQL Server 数据库中?
  • 【差分数组】个人练习-Leetcode-3229. Minimum Operations to Make Array Equal to Target
  • HTML5--裸体回顾
  • 【网络安全】CVE-2024-46990: Directus环回IP过滤器绕过实现SSRF
  • 问:JVM的垃圾收集算法你知道哪些,有什么区别?
  • Python selenium库学习使用实操四
  • 用Go开发跨平台GUI
  • 云原生开发 - 工具镜像(简约版)
  • Mac 电脑pink 后端ip地址进行本地联调
  • iPhone使用指南:如何在没有备份的情况下从 iPhone 恢复已删除的照片
  • 黑马程序员 javaWeb基础学习,精细点复习【持续更新】
  • 【C++设计模式】行为型模式:中介者模式
  • 关于C语⾔内存函数 memcpy memmove memset memcmp
  • 华为---Super VLAN简介及示例配置
  • PHP 中浮点数 array_sum 求和精度丢失问题