news 2026/4/20 21:28:53

在VMware Workstation 17.5上搭建Deepin 20.9开发环境:从系统配置到Java/Node.js/数据库全家桶

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在VMware Workstation 17.5上搭建Deepin 20.9开发环境:从系统配置到Java/Node.js/数据库全家桶

在VMware Workstation 17.5上构建Deepin 20.9全栈开发环境实战指南

对于需要在隔离环境中进行Web或后端开发的程序员来说,一个配置完善、组件齐全的开发环境是提高生产力的关键。本文将带你从零开始,在VMware Workstation 17.5上搭建基于Deepin 20.9的全栈开发环境,涵盖从虚拟机配置到Java/Node.js/数据库等核心组件的安装与联调。

1. 环境准备与系统安装

1.1 VMware Workstation 17.5的安装与配置

VMware Workstation Pro 17.5是目前最稳定的虚拟机平台之一,特别适合开发环境搭建。安装时需要注意:

  • 确保主机系统满足硬件要求:至少4核CPU、8GB内存和20GB可用磁盘空间
  • 安装过程中选择"增强型键盘驱动程序"以获得更好的输入体验
  • 完成安装后,建议调整以下默认设置:
# 修改VMware配置文件以优化性能 pref.vmplayer.minVmMemPct = "25" pref.vmplayer.minVmMemPct = "50"

1.2 Deepin 20.9系统安装

Deepin 20.9基于Debian 10(buster),提供了优秀的桌面体验和开发友好性。安装时需注意:

  1. 创建虚拟机时选择"Ubuntu 64位"作为客户机操作系统类型
  2. 分配至少4GB内存和40GB磁盘空间(建议选择动态分配)
  3. 安装过程中:
    • 选择"普通模式"安装
    • 任务栏布局选择"高效模式"
    • 创建非root用户并记住密码

安装完成后,执行以下基础配置:

# 更新系统并安装基础工具 sudo apt update && sudo apt upgrade -y sudo apt install -y build-essential git curl wget

2. 开发环境核心组件安装

2.1 Java开发环境配置

对于企业级Java开发,JDK 8仍然是许多项目的标准选择。在Deepin上安装:

# 安装OpenJDK 8 sudo apt install -y openjdk-8-jdk # 验证安装 java -version javac -version # 设置环境变量 echo 'export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64' >> ~/.bashrc echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc source ~/.bashrc

提示:如果需要同时管理多个Java版本,可以考虑使用jenv工具进行版本切换。

2.2 Node.js环境搭建

针对特定框架如RuoYi-Cloud,可能需要特定版本的Node.js。以下是Node.js 14的安装方法:

# 安装nvm(Node版本管理器) curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash # 加载nvm export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # 安装Node.js 14 nvm install 14 # 配置npm镜像源 npm config set registry https://registry.npmmirror.com # 安装常用工具 npm install -g yarn cnpm @vue/cli@3

2.3 数据库服务安装与配置

MySQL 5.7安装

由于兼容性考虑,许多项目仍在使用MySQL 5.7:

# 下载MySQL 5.7 deb包 wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_5.7.42-1debian10_amd64.deb-bundle.tar # 解压并安装 tar -xvf mysql-server_5.7.42-1debian10_amd64.deb-bundle.tar sudo dpkg -i mysql-{common,community-client,client,community-server,server}_*.deb sudo apt-get -f install # 安全配置 sudo mysql_secure_installation # 允许远程访问(开发环境) sudo sed -i 's/bind-address.*/bind-address = 0.0.0.0/' /etc/mysql/mysql.conf.d/mysqld.cnf sudo systemctl restart mysql
Redis安装与优化
# 安装Redis sudo apt install -y redis-server # 配置远程访问 sudo sed -i 's/bind 127.0.0.1/bind 0.0.0.0/' /etc/redis/redis.conf sudo sed -i 's/protected-mode yes/protected-mode no/' /etc/redis/redis.conf # 性能优化设置 echo "maxmemory 256mb" | sudo tee -a /etc/redis/redis.conf echo "maxmemory-policy allkeys-lru" | sudo tee -a /etc/redis/redis.conf # 重启服务 sudo systemctl restart redis sudo systemctl enable redis

3. 网络与系统优化

3.1 虚拟机网络配置

确保宿主机可以访问虚拟机中的服务是关键:

  1. 在VMware网络编辑器中,选择"NAT模式"并确保已启用端口转发
  2. 配置Deepin防火墙允许开发端口:
# 安装并配置UFW防火墙 sudo apt install -y ufw sudo ufw allow 22/tcp # SSH sudo ufw allow 3306/tcp # MySQL sudo ufw allow 6379/tcp # Redis sudo ufw allow 80/tcp # Nginx sudo ufw enable

3.2 系统性能调优

针对开发环境进行系统优化:

# 调整swappiness值 echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf # 提高文件描述符限制 echo '* soft nofile 65535' | sudo tee -a /etc/security/limits.conf echo '* hard nofile 65535' | sudo tee -a /etc/security/limits.conf # 禁用不必要的服务 sudo systemctl disable bluetooth.service sudo systemctl disable cups.service

4. 开发工具链完善

4.1 代码编辑器与IDE

VS Code是大多数开发者的首选:

# 安装VS Code wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg sudo install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/ sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list' sudo apt update sudo apt install -y code # 安装常用扩展 code --install-extension ms-vscode.vscode-node-azure-pack code --install-extension vscjava.vscode-java-pack code --install-extension dbaeumer.vscode-eslint

4.2 数据库管理工具

对于数据库开发,图形化管理工具很有帮助:

# 安装DBeaver(社区版) wget https://dbeaver.io/files/dbeaver-ce_latest_amd64.deb sudo dpkg -i dbeaver-ce_latest_amd64.deb # 安装Redis桌面管理器 wget https://github.com/qishibo/AnotherRedisDesktopManager/releases/download/v1.6.6/Another-Redis-Desktop-Manager.1.6.6.AppImage chmod +x Another-Redis-Desktop-Manager.1.6.6.AppImage

4.3 版本控制与协作工具

# 安装Git并配置 sudo apt install -y git git config --global user.name "Your Name" git config --global user.email "your.email@example.com" git config --global core.editor "code --wait" # 安装SSH客户端 sudo apt install -y electerm

5. 服务集成与项目部署

5.1 Nginx配置与反向代理

# 安装Nginx sudo apt install -y nginx # 基础配置示例 sudo tee /etc/nginx/sites-available/dev.conf <<'EOF' server { listen 80; server_name localhost; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } location /api/ { proxy_pass http://localhost:3000/; } } EOF # 启用配置并重启 sudo ln -s /etc/nginx/sites-available/dev.conf /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl restart nginx

5.2 项目部署自动化

使用shell脚本简化部署流程:

#!/bin/bash # deploy.sh - 自动化部署脚本 # 停止现有服务 sudo systemctl stop your-service # 更新代码 git pull origin main # 构建项目 npm install npm run build # 启动服务 sudo systemctl start your-service # 检查状态 sudo systemctl status your-service

5.3 开发环境备份策略

定期备份开发环境配置:

# 创建备份脚本 cat > ~/backup_dev_env.sh <<'EOF' #!/bin/bash BACKUP_DIR="/path/to/backup" TIMESTAMP=$(date +%Y%m%d_%H%M%S) # 备份配置文件 tar -czf ${BACKUP_DIR}/dev_config_${TIMESTAMP}.tar.gz \ ~/.bashrc \ ~/.npmrc \ ~/.gitconfig \ /etc/nginx/sites-available/ \ /etc/mysql/my.cnf \ /etc/redis/redis.conf # 备份已安装软件列表 dpkg --get-selections > ${BACKUP_DIR}/package_list_${TIMESTAMP}.txt EOF # 设置可执行权限 chmod +x ~/backup_dev_env.sh

6. 常见问题排查与解决

6.1 网络连接问题

当宿主机无法访问虚拟机服务时:

  1. 检查虚拟机网络适配器设置是否为NAT模式
  2. 验证虚拟机防火墙规则:
    sudo ufw status numbered
  3. 测试端口连通性:
    telnet <虚拟机IP> 3306

6.2 性能优化技巧

如果虚拟机运行缓慢,可以尝试:

  • 在VMware设置中启用"加速3D图形"
  • 增加虚拟机内存分配
  • 关闭Deepin桌面特效:
    gsettings set com.deepin.wrap.gnome.desktop.interface enable-animations false

6.3 数据库连接问题

MySQL远程连接失败的常见解决方法:

# 检查用户权限 mysql -u root -p -e "SELECT host, user FROM mysql.user;" # 创建开发用账户 mysql -u root -p -e "CREATE USER 'dev'@'%' IDENTIFIED BY 'devpass';" mysql -u root -p -e "GRANT ALL PRIVILEGES ON *.* TO 'dev'@'%';" mysql -u root -p -e "FLUSH PRIVILEGES;"
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/20 21:27:24

别再死记硬背了!用Python+Matlab玩转Gumbel分布,从理论到实战代码全解析

从数学公式到代码实现&#xff1a;Python与Matlab双视角解密Gumbel分布实战 在统计学和机器学习领域&#xff0c;极值理论一直扮演着重要角色&#xff0c;而Gumbel分布作为极值分布家族的核心成员&#xff0c;广泛应用于风险评估、可靠性工程和离散选择模型等场景。许多初学者在…

作者头像 李华
网站建设 2026/4/20 21:26:25

从《加密与解密》到实战:用OllyDbg永久Patch掉TraceMe.exe的校验逻辑

逆向工程实战&#xff1a;用OllyDbg永久修改TraceMe.exe的校验逻辑 在软件安全领域&#xff0c;逆向工程就像一把双刃剑——它既能帮助开发者发现潜在漏洞&#xff0c;也能被用来分析软件保护机制。今天我们要探讨的是一个经典案例&#xff1a;如何通过OllyDbg动态调试工具&…

作者头像 李华
网站建设 2026/4/20 21:26:24

iPaaS集成平台:打通企业数据孤岛的全景解析

处于数字化转型浪潮里&#xff0c;企业内部的IT系统愈发繁杂&#xff0c;从ERP、CRM再到各类SaaS应用&#xff0c;由不同年代、不同厂商构建的系统常常相互独立&#xff0c;进而形成“数据孤岛”&#xff0c;怎样高效且安全地达成跨系统、跨云、跨部门的数据 和应用集成&#x…

作者头像 李华