根据GCP环境配置Rails开发环境〜Ruby2.7、Rails6.2.3、PostgreSQL12〜

根据GCP环境配置Rails的开发环境。

索引

    1. 希望配置的生产环境

 

    1. 安装Ruby

 

    1. 安装PostgreSQL

 

    安装Rails

想要设定正式环境

谷歌云平台

这是一个用于运行应用程序的环境。省略了对本地环境没有影响的部分。

項目サービスWebサーバーGoogle App EnginRDBGoogle Cloud SQL(Postgres)

构建本地环境

这次我们构建的本地环境,不使用Docker或Vagrant等工具,而是在Mac主机上进行构建。

項目バージョン
Ruby2.7.2GAEが対応している最新バージョンが2.7系PostgreSQL12.6CloudSQLのデフォルトバージョンが12系Rails6.1.3Railsの最新バージョン

安装Ruby

rbenv 是一个用于管理 Ruby 版本的工具。

不需要提供rbenv的安装方式

安装2.7.2版本。

$ rbenv install --list-all | grep 2.7
1.8.6-p287
2.0.0-p247
2.2.7
2.7.0-dev
2.7.0-preview1
2.7.0-preview2
2.7.0-preview3
2.7.0-rc1
2.7.0-rc2
2.7.0
2.7.1
2.7.2
jruby-9.2.7.0
rbx-2.2.7
rbx-2.7
rbx-2.71828182
$ rbenv install 2.7.2
$ rbenv global 2.7.2
$ ruby -v 
ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-darwin19]

在中国,我们使用以下翻译:
安装PostgreSQL

安装PostgreSQL

$ brew search postgres
==> Formulae
check_postgres        postgresql            postgresql@10         postgresql@11         postgresql@12        postgresql@9.4        postgresql@9.5        postgresql@9.6        postgrest
==> Casks
navicat-for-postgresql                   postgres                                 postgrespreferencepane                   sqlpro-for-postgres                      homebrew/cask-versions/postgres-beta
$ brew install postgresql@12

设置以便能够使用PostgreSQL。

在指定版本的PostgreSQL上添加@后,发现该版本的PostgreSQL的PATH路径没有被设置,无法使用。由于在本地环境中未正确配置PostgreSQL,因此在执行bundle install时会失败,请进行配置。

# 設定できていないからpsqlコマンドが使えない
$ psql —version
-bash: psql: command not found

为了使brew路径生效,使用brew info命令来确认安装信息。

$ brew info postgresql@12
postgresql@12: stable 12.6 (bottled) [keg-only]
Object-relational database system
https://www.postgresql.org/
/usr/local/Cellar/postgresql@12/12.6_1 (3,225 files, 41.7MB)
  Poured from bottle on 2021-03-10 at 22:47:38
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/postgresql@12.rb
License: PostgreSQL
==> Dependencies
Build: pkg-config ✔
Required: icu4c ✔, krb5 ✔, openssl@1.1 ✔, readline ✔
==> Caveats
This formula has created a default database cluster with:
  initdb --locale=C -E UTF-8 /usr/local/var/postgresql@12
For more details, read:
  https://www.postgresql.org/docs/12/app-initdb.html

postgresql@12 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.

If you need to have postgresql@12 first in your PATH, run:
  echo 'export PATH="/usr/local/opt/postgresql@12/bin:$PATH"' >> /Users/hogeuser/.bash_profile

For compilers to find postgresql@12 you may need to set:
  export LDFLAGS="-L/usr/local/opt/postgresql@12/lib"
  export CPPFLAGS="-I/usr/local/opt/postgresql@12/include"

For pkg-config to find postgresql@12 you may need to set:
  export PKG_CONFIG_PATH="/usr/local/opt/postgresql@12/lib/pkgconfig"


To have launchd start postgresql@12 now and restart at login:
  brew services start postgresql@12
Or, if you don't want/need a background service you can just run:
  pg_ctl -D /usr/local/var/postgresql@12 start
==> Analytics
install: 14,693 (30 days), 32,591 (90 days), 58,050 (365 days)
install-on-request: 14,392 (30 days), 31,721 (90 days), 56,936 (365 days)
build-error: 0 (30 days)

如果你需要让postgresql@12首先出现在你的路径中,请运行以下命令:
echo ‘export PATH=”/usr/local/opt/postgresql@12/bin:$PATH”‘ >> /Users/hogeuser/.bash_profile

按照显示的方式执行命令。

$ echo 'export PATH="/usr/local/opt/postgresql@12/bin:$PATH"' >> /Users/hogeuser/.bash_profile

# .bash_profileの更新を反映(ターミナルの再起動でもOK)
$ source ~/.bash_profile 

# インストールできたか確認
$ psql -V 
psql (PostgreSQL) 12.6

开动

$ pg_ctl start -D /usr/local/var/postgresql@12

连接

$ psql -d postgres

在中国,这句话的本土化的写法是:安装Rails。

$ gem install -v 6.1.3 rails
广告
将在 10 秒后关闭
bannerAds