如何在WSL Ubuntu中继续开发原有Windows环境下的Rails项目
解答
是否需要在WSL Ubuntu中重新安装Rails?
需要。WSL Ubuntu是独立于Windows宿主的Linux运行环境,二者的运行时、依赖库、软件包完全不互通,Windows侧安装的Rails无法直接在WSL环境中调用,必须在WSL Ubuntu内重新安装完整的Rails开发栈。
具体操作步骤
- 第一步:更新系统基础包
打开WSL Ubuntu终端,执行命令:sudo apt update && sudo apt upgrade -y - 第二步:安装Rails依赖的系统组件
执行命令:sudo apt install -y git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libncurses5-dev libffi-dev libgdbm-dev
如果项目需要Node.js编译前端资源,可同步安装nvm管理Node版本:curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bashsource ~/.bashrc
安装对应版本Node(示例为18.x,可替换为你的项目适配版本):nvm install 18 - 第三步:安装Ruby版本管理器与对应版本Ruby
推荐使用rbenv做版本管理,依次执行以下命令:git clone https://github.com/rbenv/rbenv.git ~/.rbenvecho 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrcecho 'eval "$(rbenv init -)"' >> ~/.bashrcsource ~/.bashrcgit clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
安装与原Windows项目一致的Ruby版本(示例为3.2.2,可替换为你的项目实际使用版本):rbenv install 3.2.2rbenv global 3.2.2
验证安装结果:ruby -v - 第四步:安装对应版本Rails
安装与原项目一致的Rails版本(示例为7.0.8,可替换为实际版本):gem install rails -v 7.0.8
验证安装结果:rails -v - 第五步:迁移项目代码
不建议直接通过WSL的/mnt挂载盘访问Windows侧的项目文件,会出现性能下降、权限冲突等问题,建议将项目代码复制到WSL原生文件系统中,示例命令:cp -r /mnt/c/Users/你的Windows用户名/原项目存储路径/项目名 ~/rails-project/ - 第六步:启动项目
进入项目目录:cd ~/rails-project
安装项目依赖:bundle install
执行数据库迁移(如有):rails db:migrate
启动开发服务:rails s
启动后直接在Windows侧的浏览器访问localhost:3000即可访问WSL中运行的Rails服务。
注意事项
所有开发操作建议都在WSL原生文件系统内完成,不要直接修改/mnt挂载盘中的Windows文件,避免出现权限异常。
如果使用VS Code作为开发工具,安装WSL扩展后,在WSL终端进入项目目录执行code .即可唤起Windows侧的VS Code直接连接WSL环境开发,无需额外适配。
内容的提问来源于stack exchange,提问作者Allan Solitei
相关产品推荐
相关产品推荐

