根据GCP环境配置Rails开发环境〜Ruby2.7、Rails6.2.3、PostgreSQL12〜
根据GCP环境配置Rails的开发环境。
索引
-
- 希望配置的生产环境
-
- 安装Ruby
-
- 安装PostgreSQL
- 安装Rails
想要设定正式环境
谷歌云平台
这是一个用于运行应用程序的环境。省略了对本地环境没有影响的部分。
項目サービスWebサーバーGoogle App EnginRDBGoogle Cloud SQL(Postgres)
构建本地环境
这次我们构建的本地环境,不使用Docker或Vagrant等工具,而是在Mac主机上进行构建。
項目バージョン
Ruby2.7.2GAEが対応している最新バージョンが2.7系PostgreSQL12.6CloudSQLのデフォルトバージョンが12系Rails6.1.3Railsの最新バージョン
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