GNU/Linux >> Znalost Linux >  >> Linux

Konfigurace připojení databáze pomocí proměnné prostředí v Rails

Tato příručka vysvětluje, proč k připojení k databázi potřebujete použít proměnnou prostředí a jak nakonfigurovat připojení k databázi pomocí proměnné prostředí v aplikaci Rails v Linuxu.

Proč používat proměnnou prostředí ke konfiguraci databáze?

Každá aplikace Rails bude komunikovat se svou příslušnou databází. Existují dva způsoby, jak se připojit k databázi v aplikaci Rails. K databázi se můžete připojit prostřednictvím konfiguračního souboru databáze s názvem config/database.yml nebo pomocí proměnné prostředí s názvem ENV['DATABASE_URL'] . Již jsme vám ukázali, jak vytvořit aplikaci Rails s databází MySQL nebo Databáze PostgreSQL . V těchto dvou průvodcích jsme nakonfigurovali připojení k databázi pomocí config/database.yml soubor.

Pokud jste jediná osoba, která pracuje na projektu Rails, je v pořádku uložit přihlašovací údaje k databázi v config/database.yml soubor. Pokud je však projekt hostován ve veřejném úložišti Git a pracuje na něm mnoho vývojářů, nedoporučuje se ukládat citlivé informace, jako jsou hesla, do config/database.yml soubor. Také podrobnosti o databázi každého vývojáře se mohou lišit, tj. uživatelské jméno a heslo. Pokaždé, když vložíme kód, dojde ke konfliktu v souboru. To je důvod, proč potřebujeme databázové pověření uložit do proměnné prostředí, spíše než je zapisovat přímo do konfiguračního souboru databáze.

Konfigurace databázového připojení pomocí proměnné prostředí v aplikaci Rails

Předpokládám, že na svém Linuxovém stroji máte nejnovější Ruby on Rails. Pokud jste Ruby on Rails ještě nenainstalovali, podívejte se na následující průvodce.

  • Jak nainstalovat Ruby On Rails v Linuxu

Dále vytvořte novou aplikaci Rails. Pokud chcete používat MySQL s aplikací Rails, spusťte následující příkaz a vytvořte novou aplikaci Rails, konkrétně ostechnixapp :

$ rails new ostechnixapp -d mysql

Pokud chcete používat PostgreSQL s aplikací Rails, vytvořte novou aplikaci Rails s názvem ostechnixapp jako níže:

$ rails new ostechnixapp -d postgresql

Dále přidejte novou proměnnou prostředí s heslem uživatele databáze do souboru profilu uživatele, například ~/.bashrc .

$ echo 'export OSTECHNIXAPP_DATABASE_PASSWORD="Database_User_Password"' >> ~/.bashrc

Ve výše uvedeném příkazu nahraďte "OSTECHNIXAPP" s názvem vaší aplikace a "Database_User_Password" s vaším skutečným heslem uživatele databáze.

Zdrojový kód ~/.bashrc soubor pro okamžitou aktualizaci změn:

$ source ~/.bashrc

Nyní se přepněte do adresáře aplikace:

$ cd ostechnixapp/

Upravte konfigurační soubor databáze aplikace:

$ vi config/database.yml

Pokud používáte MySQL, přidejte uživatelské jméno databáze a proměnnou prostředí, kterou jsme přidali do ~/.bashrc soubor v předchozím kroku pod default sekce. Zde je to, co jsem přidal do konfiguračního souboru MySQL:

[...]
default: &default
   adapter: mysql2
   encoding: utf8mb4
   pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
   username: root
   password: <%= ENV['OSTECHNIXAPP_DATABASE_PASSWORD'] %>
   socket: /var/run/mysqld/mysqld.sock
[...]

Opět musíte nahradit OSTECHNIXAPP_DATABASE_PASSWORD se správnou proměnnou prostředí.

Pokud používáte PostgreSQL, přidejte databázovou roli a proměnnou prostředí pod default sekce jako níže:

[...]
default: &default
   adapter: postgresql
   encoding: unicode
   # For details on connection pooling, see Rails configuration guide
   # https://guides.rubyonrails.org/configuring.html#database-pooling
   pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
   username: ostechnix
   password: <%= ENV['OSTECHNIXAPP_DATABASE_PASSWORD'] %>
[...]

Po přidání uživatelské role databáze a proměnné prostředí stiskněte ESC a zadejte :wq pro uložení změn a ukončení souboru.

Nakonec vytvořte databázi pro vaši aplikaci Rails pomocí příkazu:

$ rake db:create

Tento příkaz vytvoří dvě databáze a to ostechnixapp_development a ostechnixapp_test .

Created database 'ostechnixapp_development'
Created database 'ostechnixapp_test'

Nyní spusťte aplikaci Rails na vestavěném webovém serveru s názvem puma pomocí příkazu:

$ rails server -b 0.0.0.0

Otevřete webový prohlížeč a přejděte do aplikace Rails na http://ip-address:3000 URL. Uvítá vás výchozí testovací stránka Rails:

Stejně jako já, pokud nechcete prozradit heslo databáze dalším vývojářům, měli byste nakonfigurovat připojení k databázi pomocí proměnné prostředí v aplikaci Rails. Pokud jste jediným vývojářem, můžete jednoduše použít výchozí konfigurační soubor databáze.


Linux
  1. Nakonfigurujte zálohy databáze MSSQL

  2. Jak nakonfigurovat databázi MySQL Slave

  3. Substituce proměnné prostředí v sed

  1. Tipy a triky pro proměnné prostředí Linuxu

  2. Jak odstraním exportovanou proměnnou prostředí?

  3. jak předat proměnnou prostředí sudo su

  1. Nakonfigurujte WSO2 API Manager s databází MySQL

  2. Ssh – pomocí již zavedeného kanálu Ssh?

  3. PuTTY:Extrémní přeměna pomocí PuTTY Connection Manager