在CentOS体系上运行Ruby on Rails应用的详细步调

[复制链接]
发表于 2025-10-10 18:52:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
以下是AI天生,仅做备份。
1. 安装须要的依靠

在CentOS上,起首要安装一些底子的开辟工具和依靠库,它们能确保后续的安装和运行过程顺遂举行。
  1. sudo yum update -y
  2. sudo yum install -y git gcc-c++ patch readline readline-devel zlib zlib-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison sqlite-devel
复制代码
2. 安装Ruby

可以利用rbenv来管理Ruby版本,它能方便地在差别的Ruby版本之间切换。
安装rbenv
  1. git clone https://github.com/rbenv/rbenv.git ~/.rbenv
  2. echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
  3. echo 'eval "$(rbenv init -)"' >> ~/.bashrc
  4. source ~/.bashrc
复制代码
安装ruby-build插件
  1. git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
复制代码
安装指定版本的Ruby(以3.2.2为例)
  1. rbenv install 3.2.2
  2. rbenv global 3.2.2
复制代码
验证Ruby安装
  1. ruby -v
复制代码
3. 安装Bundler和Rails

安装Bundler
  1. gem install bundler
复制代码
安装Rails
  1. gem install rails
  2. rbenv rehash
复制代码
4. 上传或克隆Rails应用代码

假如你在当地开辟好Rails应用后,可以将代码上传到CentOS服务器。也可以利用Git将代码堆栈克隆到服务器上。
  1. git clone <你的代码仓库地址>
  2. cd <你的应用目录>
复制代码
5. 安装应用依靠

在应用根目次下,利用Bundler安装应用所需的Gem依靠。
  1. bundle install
复制代码
6. 设置数据库

通常Rails应用会利用数据库,如SQLite、MySQL或PostgreSQL。这里以MySQL为例,先容怎样设置和利用。
安装MySQL
  1. sudo yum install -y mysql-server mysql-devel
  2. sudo systemctl start mysqld
  3. sudo systemctl enable mysqld
复制代码
创建数据库和用户
  1. mysql -u root -p
  2. CREATE DATABASE <你的数据库名>;
  3. CREATE USER '<你的用户名>'@'localhost' IDENTIFIED BY '<你的密码>';
  4. GRANT ALL PRIVILEGES ON <你的数据库名>.* TO '<你的用户名>'@'localhost';
  5. FLUSH PRIVILEGES;
  6. EXIT;
复制代码
设置Rails应用的数据库毗连

编辑config/database.yml文件,设置数据库毗连信息。
  1. development:
  2.   adapter: mysql2
  3.   encoding: utf8
  4.   database: <你的数据库名>
  5.   pool: 5
  6.   username: <你的用户名>
  7.   password: <你的密码>
  8.   host: localhost
复制代码
7. 迁移数据库
  1. rails db:migrate
复制代码
8. 预编译资产(可选)

假如你的应用利用了资产管道(如CSS、JavaScript等),可以预编译资产。
  1. rails assets:precompile
复制代码
9. 运行Rails应用

可以利用Puma作为Web服务器来运行Rails应用。
  1. rails server -b 0.0.0.0 -p 3000
复制代码
这里的-b 0.0.0.0体现答应从任何IP地点访问应用,-p 3000体现利用3000端口。
10. 设置防火墙

假如服务器启用了防火墙,须要开放3000端口。
  1. sudo firewall-cmd --permanent --add-port=3000/tcp
  2. sudo firewall-cmd --reload
复制代码
11. 让应用在配景运行

可以利用nohup或systemd来让应用在配景连续运行。
利用nohup
  1. nohup rails server -b 0.0.0.0 -p 3000
  2. &
复制代码
利用systemd

创建一个systemd服务文件:
  1. sudo nano /etc/systemd/system/rails_app.service
复制代码
在文件中添加以下内容:
  1. [Unit]Description=Rails application serverAfter=network.target[Service]Type=simpleUser=<你的用户名>WorkingDirectory=/path/to/your/appExecStart=/home/<你的用户名>/.rbenv/shims/rails server -b 0.0.0.0 -p 3000
  2. Restart=always[Install]WantedBy=multi-user.target
复制代码
重新加载systemd管理器设置:
  1. sudo systemctl daemon-reload
复制代码
启动并设置服务开机自启:
  1. sudo systemctl start rails_app
  2. sudo systemctl enable rails_app
复制代码
按照以上步调利用,你就可以在CentOS服务器上乐成运行Ruby on Rails应用了。
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表