Ich habe es nicht geschrieben, um es anderen zu zeigen.
Die Fortsetzung des Artikels, den mein Vater, Rails + MySQL + Nginx + Unicorn + Docker + CircieCI, erstellt hat, hat eine Entwicklungsumgebung geschaffen.
Fügen Sie der oben erstellten Umgebung die [* Rails *] - Geräteverwendung (Rails5-Version) hinzu und fügen Sie die Twitter-API zu "gem'dotenv-rails" hinzu Ich habe es in der Produktionsumgebung auf Heroku hochgeladen, während ich es mit versteckt habe.
docker-compose.yml
command: /bin/sh -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'"
Zweck: Ich möchte meinen Twitter-API-Schlüssel nicht lokal auf GitHub ablegen
Ich möchte die env-Datei nicht in die Git-Verwaltung einfügen, also füge der .gitignore-Datei Folgendes hinzu.
Fügen Sie .env
zu .gitignore
hinzu.
Die .env ist jetzt außerhalb der Kontrolle von Git.
https://pikawaka.com/rails/dotenv-rails http://vdeep.net/rubyonrails-dotenv
[* Rails *] Verwendung von devise (Rails5-Version) Schreiben Sie den Ort neu, an dem die Twitter-API zu ENV hinzugefügt werden soll []
config/initializer/devise.rb
config.omniauth :twitter, ENV['TWITTER_API_KEY'], ENV['DATABASE_URL']
Vielleicht sind DATABASE_URL und TWIITER_API_KEY, DATABASE_URL ein Muss.
Heroku-GUI-Einstellung Config Vars oder [Einstellungen für Heroku-App-Umgebungsvariablen (mit CUI festgelegt)](https://qiita.com/murakami- Set mit mm / items / 9587e21fc0ed57c803d0)
--ClearDB URL Bestätigung Sie können die ClearDB-URL mit dem folgenden Befehl überprüfen.
$ heroku config
=== <App Name> Config Vars
CLEARDB_DATABASE_URL: mysql://<Nutzername>:<Passwort>@<Hostname>/<Name der Datenbank>?reconnect=true
$ heroku config:add DB_NAME='<Name der Datenbank>'
$ heroku config:add DB_USERNAME='<Nutzername>'
$ heroku config:add DB_PASSWORD='<Passwort>'
$ heroku config:add DB_HOSTNAME='<Hostname>'
$ heroku config:add DB_PORT='3306'
$ heroku config:add DATABASE_URL='mysql2://<Nutzername>:<Passwort>@<Hostname>/<Name der Datenbank>?reconnect=true'
$ heroku config
=== <App Name> Config Vars
CLEARDB_DATABASE_URL: mysql://<Nutzername>:<Passwort>@<Hostname>/<Name der Datenbank>?reconnect=true
DATABASE_URL: mysql2://<Nutzername>:<Passwort>@<Hostname>/<Name der Datenbank>?reconnect=true
DB_HOSTNAME: <Hostname>
DB_NAME: <Name der Datenbank>
DB_PASSWORD: <Passwort>
DB_PORT: 3306
DB_USERNAME: <Nutzername>
config / environment / Production.rb
hinzugefügt
(Die Einstellungen hier werden später korrigiert.)config.assets.compile = true
config.assets.initialize_on_precompile=false
Stellen Sie außerdem die Twitter-API ein, die mit ".env" von "gem'dotenv-Rails" auf der Heroku-Seite erstellt wurde.
Referenz https://qiita.com/ymstshinichiro/items/d6ea229f6eb4778006c2 https://golikyua.hatenablog.com/entry/2020/01/09/135254 https://www.sejuku.net/blog/tutorial/111347
Recommended Posts