Ruby環境搭建不完全手冊

starting out with Ruby

前言:

本文的目標是隻要高中畢業,具有基本的計算機概念,都能輕鬆上手的傻瓜版教程。
// 特別是我這種零基礎文科小白

基礎概念篇

  1. 我們目前使用的開發語言都是經過封裝和優化的,更接近人類語言的存在,所以我們需要:

    1. 程序運行環境,e.g. Java 的JDK,Ruby和Go的基礎lib
    2. 具備諸如代碼補全、高亮、運行…的編輯器/IDE

    當然也有大神直接用記事本/notepad擼代碼,那種非人類的操作只可遠觀不可隨意模仿

  2. 開發語言,無論Python、Go、Perl、Prolog…最終目的都是通過一系列的邏輯來處理數據,那麼我們需要:

    1. 一個容器可以承載和運行我們的處理邏輯
    2. 一些容器用來儲存我們的數據
    3. 一些路徑可以讓我們控制邏輯去做處理
    4. 一些方式讓我們看到處理的結果
  3. 在瞭解了這些之後我們瞭解到需要做以下到準備:

    1. 計算機/服務器上開發和編譯程序用的環境
    2. 趁手的IDE
    3. 程序運行和部署工具

環境準備篇

  1. 開發環境(以下的手順都以Mac爲基礎環境)
    0. Java JDK (somehow bazel 的安裝需要JDK 1.8…emmmm…)
    >https://blog.csdn.net/deliciousion/article/details/78046007

    1. Ruby的安裝

      1. Mac自帶有Ruby,可以查看ruby版本

        chens-MacBook-Pro:~ chenchen$ ruby --version
        ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin17]
        
      2. ruby的包管理器gem也是預裝過的,可以查看版本

        chens-MacBook-Pro:~ chenchen$ gem --version
        2.5.2.3
        
    2. 接下來安裝HomezBrew,這是Mac上的包管理器,類似Notepad++裏面的pluginmanager。
      這玩意同時依賴了Xcode和Ruby,本着要用就用最新的想法(希望能避免好多坑),直接搞最新版。
      這命令我抄的,在命令行裏敲:

      /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 
      

      一大堆下一步,會有一些需要輸入管理員密碼的地方,用來在系統目錄裏創建一些文件

      因爲這玩意會依賴xcode,所以可能會提示要求裝xcode-select

      果斷自己先手動安裝掉

      chens-MacBook-Pro:~ chenchen$ xcode-select --install
      xcode-select: note: install requested for command line developer tools
      

      當然,像我臉這麼黑的肯定是安裝失敗了,只好去Apple developer裏面去下了自己裝

      需要登陸appleId
      https://developer.apple.com/download/more/

    3. 安裝Xcode相關的東西,主要爲了編譯各種C++的包

      上一步已經做好了的話,就只做3和4就好

      1. xcode-select install
        1. 如果失敗了,從app store裏裝一下xcode
        2. 更新一把
        3. 然後重定向xcode:sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
        4. 裝下xcode的license:sudo xcodebuild -license
    4. 安裝protobuf

      1. brew install protobuf
        0. https://blog.csdn.net/u014534808/article/details/80203018
      2. 遇到類似 xxx Permission denied xxx /usr/local/Frameworks的時候:
        0. 可能是這個文件夾不存在,跑一下
        1. sudo mkdir /usr/local/Frameworks
        2. sudo chown $(whoami):admin /usr/local/Frameworks
        3. 再run一下#1 裏面的 install 命令就好了
    5. 安裝gRPC相關組件

      1. grpc 使用環境

        gem install grpc

      2. grpc 編譯工具

        gem install grpc-tools

    6. 安裝mysql

      1. brew install [email protected] (目前線上環境有5.6和5.7兩種instance,裝5.7也一樣。不過需要自己建my.cnf)

        這個功能貌似已經在新版本里被幹掉了,需要確認一下是否可以指定安裝版本

      2. 重裝mysql鏈接庫 mysql2

        由於5x和8x的路徑不一樣,相互又不兼容,所以可能需要重裝一遍

        通過gem list | grep mysql2確定是否存在
        存在就執行第三步否則跳過

      3. 卸載當前的mysql2

        gem uninstall mysql2

      4. 安裝mysql2 並指定配置文件位置

        gem install mysql2 -v '0.4.10' -- --with-mysql-config=/usr/local/Cellar/[email protected]/5.6.42/bin/mysql_config

        其中通過 -v 指定 mysql2 版本,通過 --with-mysql-config 指定mysql配置文件路徑,這個路徑可能根據安裝包的不同而不同

        由於路徑不同,我們可能還需要把mysql裏面用到的一些應用做超鏈接

        mysql本尊

        ln -sf /usr/local/Cellar/mysql\@5.6/5.6.42/bin/mysql /usr/local/bin/mysql

        mysql.server

        ln -sf /usr/local/Cellar/mysql\@5.6/5.6.42/bin/mysql.server /usr/local/bin/

        mysqldump

        ln -sf /usr/local/Cellar/mysql\@5.6/5.6.42/bin/mysqldump /usr/local/bin/

        然後驗證一下

        mysql --version

        mysql Ver 14.14 Distrib 5.6.42, for osx10.14 (x86_64) using EditLine wrapper
        這個可能不一樣,以真實安裝爲準

      5. 啓動mysql

        mysql.server start
        
        
      6. 這個安裝過程可能需要重複很多遍,參考這個地方來來回卸載MySql

         sudo rm /usr/local/mysql
         sudo rm -rf /usr/local/mysql*
         sudo rm -rf /Library/StartupItems/MySQLCOM
         sudo rm -rf /Library/PreferencePanes/My*
         rm -rf ~/Library/PreferencePanes/My*
         sudo rm -rf /Library/Receipts/mysql*
         sudo rm -rf /Library/Receipts/MySQL*
         sudo rm -rf /var/db/receipts/com.mysql.*
         其實不同的安裝方式有些東西的存儲位置不一樣,刪除完檢查一下下面這些文件是否刪除了,沒有的話則刪除掉:
         /usr/local/Cellar 裏的mysql文件
         /usr/local/var 裏的mysql文件
         /tmp 裏的mysql.sock, mysql.sock.lock, my.cnf文件
         pid文件和err文件都在/usr/local/var/mysql裏確保刪除了
         brew安裝的安裝包存儲在/usr/local/Library/Cache/Homebrew也可以一併刪除
         執行brew cleanup 
        
        
    7. 安裝redis

      1. 官網下載 stable版的安裝包
      2. 解壓縮然後挪到 /usr/local/
        tar -vxf redis-5.0.0.tar -C /usr/local/
      3. 進redis的目錄編譯一下,參考這篇
        cd /usr/local/redis*
        sudo make test
        sudo make install
        
      4. 後臺啓動redis
        redis-server &
        
  2. 各種開發工具,目前主流的是用IDEA和VSCode來進行開發,也歡迎用其他的
    0. IDEA
    0. 直接官網下載
    1. 破解方法百度"lan yu",支持正版從我做起:)
    2. 安裝各種插件,比如"ruby"

    1. VSCode
      0. 直接官網下載
      1. 安裝各種插件,比如"ruby"
    2. DB工具
      0. 我直接用的MySql自己的MySQLWorkbench
      1. 鏈接一下本地DB試試,記得改root密碼 :)
  3. 運行容器
    0. 一般來說有三種方式運行程序
    0. 本地直接運行
    1. 虛擬機
    2. docker

     三種方式各有優缺點可以自己找資料
    
    1. 安裝docker
      0. 官網安裝教程
      1. 下載普通安裝略
      2. 版本驗證
        chen1:llspay chenchen$ docker --version
        Docker version 18.06.1-ce, build e68fc7a
        chen1:llspay chenchen$ docker-compose --version
        docker-compose version 1.22.0, build f46880f
        chen1:llspay chenchen$ docker-machine --version
        docker-machine version 0.15.0, build b48dc28d
        
      3. 然後在狀態欄小鯨魚裏面裝Kubernetes

導入項目

涉及公司信息,略。

ruby依賴庫

  1. bundler:Manage dependencies of an application

    ref: https://rubygems.org/gems/bundler

  2. pry: Ruby的debug工具。可能裝了,如果沒裝:
    gem install pry

    ref: https://github.com/pry/pry

  3. Debug Ruby用的一些玩意兒
    0. debase
    gem install debase

    ref: https://rubygems.org/gems/debase/

    1. ruby-debug-ide
      gem install ruby-debug-ide

      ref: https://rubygems.org/gems/ruby-debug-ide/

關於開發

  1. 教程
  2. CI/CD
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章