<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>wanxd (steven)</title>
    <link>https://ruby-china.org/wanxd</link>
    <description/>
    <language>en-us</language>
    <item>
      <title> ruby 学习环境搭建（wsl+ubuntu+ruby+rubymine+debug）</title>
      <description>&lt;h2 id="ruby 学习环境搭建（wsl+ubuntu+ruby+rubymine+debug）"&gt;ruby 学习环境搭建（wsl+ubuntu+ruby+rubymine+debug）&lt;/h2&gt;
&lt;blockquote&gt;
&lt;h3 id="之前纠结在 windows 10 安装 ruby 需要的环境，哎，各种坑，比如 mysql2 的安装，找了很多解决文章，综合后解决了。结果又遇到问题了，那一刻我知道我错了。我打算自己装一个虚拟机，装 linux 环境。而就在这个时候发现原来 wsl 比虚拟机更加便利。所以方向就以 wsl 虚拟机为方向去搭建。"&gt;之前纠结在 windows 10 安装 ruby 需要的环境，哎，各种坑，比如 mysql2 的安装，找了很多解决文章，综合后解决了。结果又遇到问题了，那一刻我知道我错了。我打算自己装一个虚拟机，装 linux 环境。而就在这个时候发现原来 wsl 比虚拟机更加便利。所以方向就以 wsl 虚拟机为方向去搭建。&lt;/h3&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;h3 id="wsl 安装 Ubuntu"&gt;wsl 安装 Ubuntu&lt;/h3&gt;
&lt;blockquote&gt;
&lt;h4 id="安装方式参考官方：wsl 安装"&gt;安装方式参考官方：&lt;a href="https://docs.microsoft.com/zh-cn/windows/wsl/install" rel="nofollow" target="_blank" title=""&gt;wsl 安装&lt;/a&gt;
&lt;/h4&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt; 默认安装的是 Ubuntu，而且还是 C 盘，最好是迁移到其它盘：网上查询下就能找到：&lt;a href="https://blog.csdn.net/momodosky/article/details/108102146" rel="nofollow" target="_blank" title=""&gt;wsl ubuntu 迁移&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; Ubuntu 换源：网上也可以找到，建议阿里云，不是清华的那个。&lt;a href="https://cloud.tencent.com/developer/article/1538304" rel="nofollow" target="_blank" title=""&gt;换源&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; 涉及到 vim 编辑器常用命令，网上可以找下：基本命令 dd 删除所有文本，i 进行编辑摸索 ,拷贝源进入 source.list，然后 esc 命令，:wq 保存。&lt;/li&gt;
&lt;li&gt; rbenv 安装 ruby,rails 等&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;参考文章：&lt;a href="https://cloud.tencent.com/developer/article/1352641" rel="nofollow" target="_blank" title=""&gt;ubuntu 安装 rbenv&lt;/a&gt;,其中 &lt;code&gt;sudo apt install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm5 libgdbm-dev&lt;/code&gt; 该命令执行的时候，好像是它们两个的其中一个 &lt;code&gt;libgdbm5  libncurses5-dev&lt;/code&gt; 执行失败，按照提示可以把报错的一个 5 版本弄成 6 就可以了。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt; 宿主机安装 ide(rubymine,vscode)&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;rubymine 是安装在宿主机，也就是 windows10 的，当然也可以使用 vscode，都是 windows 安装。只是 vscode 需要单独安装 remote-wsl 插件。ruby mine 自带的&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;wsl Ubuntu 是可以访问其它盘符的 /mnt/c,/mnt/d,/mnt/e 这些就是 windows 里面的，它们可以相互访问的。意味着到时候你在 windows 的 ide 编辑文件，服务在 wsl ubuntu 里面跑起来。&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;rubymine debug wsl &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; setting ---” Ruby SDK and Gems&lt;/li&gt;
&lt;li&gt;+ 新增 new remote,wsl&lt;/li&gt;
&lt;li&gt; 重点注意：ruby or version manager path 这个位置，看意思就是知道是 ruby 的路径或者管理 ruby 第三方的路径。我本地的第三方管理是这个：&lt;code&gt;/root/.rbenv/bin/rbenv&lt;/code&gt; 一般还会弹出一个下拉框，就是 ruby 的版本（如果你安装了多个 ruby 版本的话）。&lt;/li&gt;
&lt;li&gt; 最后就是在当前弹框，Ruby SDK and Gems，+ - 后面的 第三个按钮，edit path mappings 观察下，windows 和 wsl 里面的项目路径是否对的上，一般是需不需要修改的，都对的上。&lt;/li&gt;
&lt;li&gt; 最后就是点击 debug 按钮，项目跑起来了。然后就可以进行 debug &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;h4 id="wsl 安装 docker"&gt;wsl 安装 docker&lt;/h4&gt;
&lt;blockquote&gt;
&lt;p&gt;可以参考：&lt;a href="https://blog.csdn.net/Thepatterraining/article/details/117667052#:~:text=wsl%E5%AE%89%E8%A3%85docker%20wsl%20%E4%BD%BF%E7%94%A8%E7%9A%84%E6%98%AFubuntu,20%E7%9A%84%E7%89%88%E6%9C%AC%EF%BC%8C%E6%89%80%E4%BB%A5%E5%8F%AF%E4%BB%A5%E7%9B%B4%E6%8E%A5%E4%BD%BF%E7%94%A8%20apt%20%E8%BF%9B%E8%A1%8C%E5%AE%89%E8%A3%85%EF%BC%8Cdocker%E5%AE%98%E7%BD%91%E7%9A%84%E5%AE%89%E8%A3%85%E4%B9%9F%E6%98%AF%E6%8E%A8%E8%8D%90%E4%BD%BF%E7%94%A8%E7%9A%84apt%E8%BF%9B%E8%A1%8C%E5%AE%89%E8%A3%85%E3%80%82" rel="nofollow" target="_blank" title=""&gt;安装 docker&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;我 windows 宿主机也按照了最新的 docker，而且利用的是 wsl 启动的。等 wsl 安装 docker 后我发现原来 wsl 里面用的还是外面宿主机的 docker&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/li&gt;
&lt;/ul&gt;</description>
      <author>wanxd</author>
      <pubDate>Tue, 16 Aug 2022 09:25:35 +0800</pubDate>
      <link>https://ruby-china.org/topics/42597</link>
      <guid>https://ruby-china.org/topics/42597</guid>
    </item>
  </channel>
</rss>
