Ubuntu 搭建前端环境&Vue实战

Ubuntu 搭建前端环境&Vue实战

文章目录

前言

本文讲述在 Ubuntu 上安装 nvm、pnpm 和 Vue 相关开发环境的完整配置。

1. 系统更新和基础依赖

# 更新系统包列表sudoapt update sudoapt upgrade -y# 安装常用工具sudoaptinstall-ycurlwgetgit build-essential 

2. 安装 nvm (Node Version Manager)

方法一:使用官方脚本安装(推荐)

# 下载并运行安装脚本curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh |bash# 或使用 wgetwget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh |bash

方法二:手动安装

# 从 GitHub 克隆 nvm 仓库git clone https://github.com/nvm-sh/nvm.git ~/.nvm cd ~/.nvm git checkout v0.39.0 # 将以下内容添加到 ~/.bashrcecho'export NVM_DIR="$HOME/.nvm"'>> ~/.bashrc echo'[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"'>> ~/.bashrc echo'[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"'>> ~/.bashrc 

激活 nvm

# 重新加载 bash 配置source ~/.bashrc # 验证安装 nvm --version# 查看可安装的 Node.js 版本 nvm ls-remote # 安装最新的 LTS 版本(推荐) 这里是 v24.12.0 nvm install--lts# 查看 nvm ls
1767148997467

3. 使用 nvm 安装和管理 Node.js

nvm 常用命令

# 查看可安装的 Node.js 版本 nvm ls-remote # 安装最新的 LTS 版本(推荐) 这里是 v24.12.0 nvm install--lts# 安装特定版本 nvm install18# Node.js 18.x nvm install20# Node.js 20.x# 查看已安装的版本 nvm ls# 切换使用特定版本 nvm use 18# 设置默认版本 nvm alias default 18# 验证 Node.js 和 npm 安装node--versionnpm--version# 卸载指定版本 nvm uninstall 18# Node.js 18.x nvm uninstall 20# Node.js 20.x

4. 安装 pnpm

个人习惯用 pnpm 替代 npm 包管理器, pnpm 相比 npm 的主要优势在于磁盘空间效率、安装速度、依赖管理和安全性。以下是详细对比:

特性pnpmnpm
磁盘存储⭐ 全局存储 + 硬链接,相同包只存一份❌ 每个项目都复制完整的依赖包
安装速度⭐ 首次安装快(缓存机制)⚡ 较慢(需下载解压)
依赖结构⭐ 严格扁平化,防止幽灵依赖❌ 扁平化导致依赖混乱
Monorepo 支持⭐ 内置、高效⚡ 需 Lerna/TurboRepo 等工具
安全性⭐ 默认锁定版本,防止意外依赖提升⚡ 可能有依赖劫持风险

方法一:使用 npm 安装(推荐)

node 默认自带有 npm , 可以用 npm 安装 pnpm , 听上去就像从 外面 招聘一个人来把 自己 给干掉

# 使用 npm 全局安装 pnpmnpminstall-gpnpm# 验证安装pnpm--version

方法二:使用独立脚本安装

# 使用 curlcurl-fsSL https://get.pnpm.io/install.sh |sh - # 或使用 wgetwget -qO- https://get.pnpm.io/install.sh |sh - 

配置 pnpm

最重要的就是配置 国内镜像源

因为在国内访问下载外国资源是很慢的, 推荐国内淘宝镜像 https://registry.npmmirror.com

# 查看 pnpm 配置pnpm config list # 设置淘宝镜像(可选,国内用户推荐)pnpm config set registry https://registry.npmmirror.com # 设置全局安装目录pnpm config set global-dir ~/.pnpm-global pnpm config set store-dir ~/.pnpm-store # 添加到 PATHecho'export PATH="$HOME/.pnpm-global:$PATH"'>> ~/.bashrc source ~/.bashrc pnpm setup source ~/.bashrc 

5. 安装 Vue 开发环境

vue 是国内很流行的一款用于构建用户界面的 JavaScript 框架, 详细学习请参考 Vue 官方文档

安装 Vue CLI(传统方式)

# 使用 npm 安装 Vue CLInpminstall-g @vue/cli # 或使用 pnpmpnpmadd-g @vue/cli # 验证安装 vue --version

使用 create-vue(Vue 官方推荐)

# 创建新的 Vue 项目npm create vue@latest # 或pnpm create vue@latest # 按照提示进行项目配置

6. 用 vite 创建 Vue 项目示例

创建项目

# 创建一个新的 Vue 3 项目pnpm create vite@latest my-vue-app 
1767150705127

项目结构

. ├── index.html ├── package.json ├── public │ └── vite.svg ├── README.md ├── src │ ├── App.vue │ ├── assets │ │ └── vue.svg │ ├── components │ │ └── HelloWorld.vue │ ├── main.ts │ └── style.css ├── tsconfig.app.json ├── tsconfig.json ├── tsconfig.node.json └── vite.config.ts 

运行

# 进入项目目录cd my-vue-app # 安装依赖pnpminstall# 启动开发服务器pnpm dev 

运行之后访问地址, 例如 http://localhost:5173/

1767151141053

7. 常用命令和工具

nvm 常用命令

# 列出已安装的 Node.js 版本 nvm list # 安装指定版本 nvm install18.17.0 # 使用指定版本 nvm use 18.17.0 # 设置默认版本 nvm alias default 18.17.0 # 在当前版本运行命令 nvm run 18.17.0 app.js 

pnpm 常用命令

# 安装依赖pnpminstallpnpmadd package-name # 添加到 dependenciespnpmadd-D package-name # 添加到 devDependenciespnpmadd-g package-name # 全局安装# 运行脚本pnpm run script-name pnpm dev # 开发模式pnpm build # 生产构建# 清理pnpm store prune # 清理 store# 升级包pnpm update pnpm update package-name 

Vue 相关命令

# 创建项目 vue create project-name npm create vue@latest pnpm create vue@latest # 项目内常用命令pnpm dev # 启动开发服务器pnpm build # 构建生产版本pnpm preview # 预览生产构建pnpmtest# 运行测试

8. 配置优化

创建 ~/.npmrc(可选)

# 创建或编辑 ~/.npmrcnano ~/.npmrc # 添加以下内容(国内用户建议)registry=https://registry.npmmirror.com/ sass_binary_site=https://npmmirror.com/mirrors/node-sass/ electron_mirror=https://npmmirror.com/mirrors/electron/ 

配置 shell 自动补全

# 为 pnpm 启用自动补全pnpm install-completion # 按照提示选择你的 shell (bash, zsh, fish)# 通常需要重启终端或重新加载配置source ~/.bashrc 

9. 验证安装

创建一个测试脚本验证所有组件:

# 创建测试文件cat> test-env.js <<'EOF' console.log('Node.js version:', process.version); console.log('NPM version:', require('child_process').execSync('npm --version').toString().trim()); console.log('PNPM version:', require('child_process').execSync('pnpm --version').toString().trim()); try { const vueVersion = require('child_process').execSync('vue --version').toString().trim(); console.log('Vue CLI version:', vueVersion); } catch { console.log('Vue CLI: Not installed or not in PATH'); } EOF# 运行测试node test-env.js 

10. 故障排除

nvm 命令找不到

# 重新加载 shell 配置source ~/.bashrc source ~/.profile 

权限问题

# 修复 npm 全局安装权限npm config set prefix ~/.npm-global echo'export PATH="$HOME/.npm-global/bin:$PATH"'>> ~/.bashrc source ~/.bashrc 

清理缓存

# 清理 npm 缓存npm cache clean --force# 清理 pnpm 缓存pnpm store prune 

Read more

LLaMA 3.1 模型在DAMODEL平台的部署与实战:打造智能聊天机器人

LLaMA 3.1 模型在DAMODEL平台的部署与实战:打造智能聊天机器人

文章目录 前言 一、LLaMA 3.1 的特点 二、LLaMA3.1的优势 三、LLaMA3.1部署流程 (一)创建实例 (二)通过JupyterLab登录实例 (3)部署LLaMA3.1 (4)使用教程 总结 前言 LLama3.1 是 Meta(Facebook 母公司)发布的系列大语言模型之一,属于 LLaMA(Large Language Model Meta AI)模型系列。LLaMA 模型的目标是通过更高效的设计在保持模型性能的前提下,显著降低其计算和资源需求。LLaMA 3.1 是该系列的最新版本,继承了前面版本,如 LLaMA 1

GitHub Copilot辅助编写PyTorch代码:提升开发效率

GitHub Copilot 与 PyTorch-CUDA 镜像协同开发:重塑深度学习编码体验 在深度学习项目中,开发者常常面临两个“时间黑洞”:一个是花数小时甚至几天配置环境,另一个是重复编写大量样板代码。即便你已经熟练掌握 PyTorch 的 API,从头写一个数据加载器、构建模型类、设计训练循环依然繁琐且容易出错。更别提当团队成员使用不同版本的 CUDA 或 Python 时,“在我机器上能跑”的经典问题又会卷土重来。 有没有可能让 AI 帮你写代码,同时把整个 GPU 环境打包成即插即用的容器?答案是肯定的——GitHub Copilot + PyTorch-CUDA-v2.8 镜像 正是这样一套组合拳,它不仅大幅压缩了开发周期,还让新手也能快速上手专业级深度学习工程实践。 想象一下这个场景:你在 VS Code 中输入一行注释 # Load CIFAR-10 dataset with augmentation,

Llama-Factory是否支持强化学习微调?RLHF模块进展

Llama-Factory 是否支持强化学习微调?RLHF 模块进展深度解析 在大模型时代,如何让一个“通才”变成懂你心思的“专家”,是每个开发者都在思考的问题。预训练语言模型虽然知识渊博,但生成内容常常天马行空、缺乏边界。监督微调(SFT)能教会它基本对话能力,可要让它真正理解人类偏好——比如更喜欢简洁回答而非啰嗦段落、避免敏感话题、保持逻辑连贯——仅靠标注好的输入-输出对已经不够了。 这时候,基于人类反馈的强化学习(RLHF) 就成了关键突破口。ChatGPT 的惊艳表现背后,正是 RLHF 在起作用:不是直接告诉模型“该说什么”,而是通过大量“这个回答比那个好”的比较数据,训练出一个打分器(奖励模型),再用这个打分器去引导主模型一步步优化自己的输出策略。 听起来很美,但落地极难。RLHF 是一条由 SFT → 奖励模型训练 → PPO 强化学习组成的复杂流水线,涉及多个模型协同、分布式计算调度和算法稳定性控制。对于大多数团队来说,从零搭建这样一套系统成本太高。

AI重构真的靠谱吗?深度评测VSCode Copilot在复杂项目中的实际表现

第一章:AI重构真的靠谱吗?——VSCode Copilot在复杂项目中的挑战与期待 随着AI编程助手的普及,VSCode Copilot已成为许多开发者日常编码中的“智能副驾驶”。然而,在面对大型、结构复杂的项目时,Copilot的代码建议是否依然可靠?这成为业界关注的焦点。 智能补全的边界在哪里 Copilot基于海量公开代码训练,擅长生成常见模式的代码片段,例如CRUD操作或API调用。但在涉及特定业务逻辑或架构约束时,其建议可能偏离设计初衷。例如,在一个微服务架构中,Copilot可能会建议直接访问数据库而非通过领域服务,破坏了封装原则。 实际场景中的潜在风险 * 生成的代码可能忽略项目特有的异常处理规范 * 对依赖注入和配置管理的理解不足,导致耦合度上升 * 在多模块协作场景下,难以维持上下文一致性 提升AI辅助质量的实践建议 为提高Copilot在复杂项目中的实用性,可采取以下措施: 1. 编写清晰的函数注释以引导生成方向 2. 避免让AI处理核心业务逻辑的首次实现 3. 结合单元测试快速验证AI生成代码的正确性 // 示例:通过明确注释引导