侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

CentOS 7下配置Ruby语言开发环境的方法教程

linux  /  管理员 发布于 7年前   213

本文跟大家分享的是在CentOS 7下配置Ruby语言开发环境的方法教程,分享出来供大家参考学习,下面来看看详细的介绍:

安装Ruby 2.2

CentOS7存储库中的Ruby版本为2.0,但如果需要,可以使用RPM软件包安装2.2

1、添加CentOS SCLo软件集合存储库

[root@linuxprobe ~]# yum -y install centos-release-scl-rh centos-release-scl# set [priority=10][root@linuxprobe ~]# sed -i -e "s/\]$/\]\npriority=10/g" /etc/yum.repos.d/CentOS-SCLo-scl.repo[root@linuxprobe ~]# sed -i -e "s/\]$/\]\npriority=10/g" /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo# for another way, change to [enabled=0] and use it only when needed[root@linuxprobe ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-SCLo-scl.repo[root@linuxprobe ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo# if [enabled=0], input a command to use the repository[root@linuxprobe ~]# yum --enablerepo=centos-sclo-rh install [Package][root@linuxprobe ~]# yum --enablerepo=centos-sclo-sclo install [Package]# 安装rubyyum --enablerepo=centos-sclo-rh -y install rh-ruby22

2、软件集合的软件包安装在/opt目录下, 要使用它,需要加载环境变量,如下所示:

# 加载环境变量[root@linuxprobe ~]# scl enable rh-ruby22 bash[root@linuxprobe ~]# ruby -vruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux][root@linuxprobe ~]# which ruby/opt/rh/rh-ruby22/root/usr/bin/ruby

3、设置登录时自动启用Ruby 2.2,按如下所示进行配置:

[root@linuxprobe ~]# vim /etc/profile.d/rh-ruby22.sh#!/bin/bashsource /opt/rh/rh-ruby22/enableexport X_SCLS="`scl enable rh-ruby22 'echo $X_SCLS'`"export PATH=$PATH:/opt/rh/rh-ruby22/root/usr/local/bin

安装Ruby 2.3

# 安装rubyyum --enablerepo=centos-sclo-rh -y install rh-ruby23

1、软件集合的软件包安装在/opt目录下, 要使用它,需要加载环境变量,如下所示:

# 加载环境变量[root@linuxprobe ~]# scl enable rh-ruby23 bash[root@linuxprobe ~]# ruby -vruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux][root@linuxprobe ~]# which ruby/opt/rh/rh-ruby22/root/usr/bin/ruby

2、设置登录时自动启用Ruby 2.3,按如下所示进行配置:

[root@linuxprobe ~]# vim /etc/profile.d/rh-ruby23.sh#!/bin/bashsource /opt/rh/rh-ruby23/enableexport X_SCLS="`scl enable rh-ruby23 'echo $X_SCLS'`"export PATH=$PATH:/opt/rh/rh-ruby23/root/usr/local/bin

安装Ruby on Rails 4来构建Ruby Framework环境

1、添加EPEL软件存储库

[root@linuxprobe ~]# yum -y install epel-release# set [priority=5][root@linuxprobe ~]# sed -i -e "s/\]$/\]\npriority=5/g" /etc/yum.repos.d/epel.repo# for another way, change to [enabled=0] and use it only when needed[root@linuxprobe ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/epel.repo# if [enabled=0], input a command to use the repository[root@linuxprobe ~]# yum --enablerepo=epel install [Package]

Ruby on Rails 4

1、安装Ruby 2.2,参考上面

2、安装依赖包(epel+SCLo)

[root@linuxprobe ~]# yum --enablerepo=epel,centos-sclo-rh -y install rh-ruby22-ruby-devel nodejs libuv gcc make libxml2 libxml2-devel mariadb-devel zlib-devel libxslt-devel

安装Rails 4

[root@linuxprobe ~]# gem install bundler[root@linuxprobe ~]# gem install nokogiri -- --use-system-libraries[root@linuxprobe ~]# gem install rails --version="~>4.0" --no-ri --no-rdoc[root@linuxprobe ~]# /opt/rh/rh-ruby22/root/usr/local/bin/rails -vRails 4.2.8

Ruby on Rails 5

1、安装Ruby 2.3,参考上面

2、安装依赖包(epel+SCLo)

[root@linuxprobe ~]# yum --enablerepo=epel,centos-sclo-rh -y install rh-ruby23-ruby-devel nodejs libuv gcc make libxml2 libxml2-devel mariadb-devel zlib-devel libxslt-devel

安装Rails 5

[root@linuxprobe ~]# gem install bundler[root@linuxprobe ~]# gem install nokogiri -- --use-system-libraries[root@linuxprobe ~]# gem install rails --no-ri --no-rdoc[root@linuxprobe ~]# rails -vRails 5.0.2

创建一个示例应用程序,并确保其正常工作

1、需要安装MariaDB服务

[root@linuxprobe ~]# yum -y install mariadb-server[root@linuxprobe ~]# vi /etc/my.cnf# add follows within [mysqld] section[mysqld]character-set-server=utf8[root@linuxprobe ~]# systemctl start mariadb[root@linuxprobe ~]# systemctl enable mariadbln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'

2、初始化MariaDB

[root@linuxprobe ~]# mysql_secure_installationNOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB  SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!In order to log into MariaDB to secure it, we'll need the currentpassword for the root user. If you've just installed MariaDB, andyou haven't set the root password yet, the password will be blank,so you should just press enter here.Enter current password for root (enter for none):OK, successfully used password, moving on...Setting the root password ensures that nobody can log into the MariaDBroot user without the proper authorisation.# set root passwordSet root password? [Y/n] yNew password:Re-enter new password:Password updated successfully!Reloading privilege tables.. ... Success!By default, a MariaDB installation has an anonymous user, allowing anyoneto log into MariaDB without having to have a user account created forthem. This is intended only for testing, and to make the installationgo a bit smoother. You should remove them before moving into aproduction environment.# remove anonymous usersRemove anonymous users? [Y/n] y ... Success!Normally, root should only be allowed to connect from 'localhost'. Thisensures that someone cannot guess at the root password from the network.# disallow root login remotelyDisallow root login remotely? [Y/n] y ... Success!By default, MariaDB comes with a database named 'test' that anyone canaccess. This is also intended only for testing, and should be removedbefore moving into a production environment.# remove test databaseRemove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success!Reloading the privilege tables will ensure that all changes made so farwill take effect immediately.# reload privilege tablesReload privilege tables now? [Y/n] y ... Success!Cleaning up...All done! If you've completed all of the above steps, your MariaDBinstallation should now be secure.Thanks for using MariaDB!# connect to MariaDB with root[root@linuxprobe ~]# mysql -u root -pEnter password:Welcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 11Server version: 5.5.52-MariaDB MariaDB ServerCopyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.# show user listMariaDB [(none)]> select user,host,password from mysql.user;+------+-----------+-------------------------------------------+| user | host  | password         |+------+-----------+-------------------------------------------+| root | localhost | *E2ACEC2F2DA384EE6753673365DFEF35F0C272C9 || root | 127.0.0.1 | *E2ACEC2F2DA384EE6753673365DFEF35F0C272C9 || root | ::1  | *E2ACEC2F2DA384EE6753673365DFEF35F0C272C9 |+------+-----------+-------------------------------------------+3 rows in set (0.00 sec)# show database listMariaDB [(none)]> show databases;+--------------------+| Database   |+--------------------+| information_schema || mysql    || performance_schema |+--------------------+3 rows in set (0.00 sec)MariaDB [(none)]> exitBye

3、创建测试应用程序

[root@linuxprobe ~]# gem install mysql2 --no-ri --no-rdoc -- --with-mysql-config=/usr/bin/mysql_config[root@linuxprobe ~]# rails new SampleApp -d mysql[root@linuxprobe ~]# cd SampleApp[root@linuxprobe SampleApp]# vi config/database.ymldefault: &default adapter: mysql2 encoding: utf8 pool: 5 username: root password: password # MariaDB password socket: /var/lib/mysql/mysql.sock# create test application[root@dlp SampleApp]# rails db:createCreated database 'SampleApp_development'Created database 'SampleApp_test'[root@dlp SampleApp]# rails generate scaffold testapp name:string title:string body:text[root@dlp SampleApp]# rails db:migrate[root@dlp SampleApp]# rails server --binding=0.0.0.0=> Booting Puma=> Rails 5.0.2 application starting in development on http://0.0.0.0:3000=> Run `rails server -h` for more startup optionsPuma starting in single mode...* Version 3.8.2 (ruby 2.3.1-p112), codename: Sassy Salamander* Min threads: 5, max threads: 5* Environment: development* Listening on tcp://0.0.0.0:3000Use Ctrl-C to stop 

4、客户端访问http://10.1.1.53:3000/

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对AIDI的支持。


  • 上一条:
    mac及linux下搭建ruby+rails环境
    下一条:
    linux yum安装指定版本mysql的教程详解
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在Linux系统中使用Iptables实现流量转发功能流程步骤(0个评论)
    • vim学习笔记-入门级需要了解的一些快捷键(0个评论)
    • 在centos7系统中实现分区并格式化挂载一块硬盘到/data目录流程步骤(0个评论)
    • 在Linux系统种查看某一个进程所占用的内存命令(0个评论)
    • Linux中grep命令中的10种高级用法浅析(0个评论)
    • 近期文章
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • Laravel 11.15版本发布 - Eloquent Builder中添加的泛型(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-11
    • 2017-07
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-03
    • 2022-04
    • 2022-08
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-06
    • 2023-07
    • 2023-10
    • 2023-12
    • 2024-01
    • 2024-04
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客