Je ne l'ai pas écrit pour le montrer aux autres.
La suite de l'article que mon père, Rails + MySQL + Nginx + Unicorn + Docker + CircieCI, a créé un environnement de développement.
Ajoutez [* Rails *] devise usage (version rails5) à l'environnement créé ci-dessus, et ajoutez l'API Twitter à gem'dotenv-rails'
Je l'ai téléchargé sur heroku dans l'environnement de production tout en le cachant avec.
docker-compose.yml
command: /bin/sh -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'"
Objectif: je ne veux pas mettre ma clé API Twitter localement sur GitHub
Je ne veux pas mettre le fichier env dans la gestion Git, alors ajoutez ce qui suit au fichier .gitignore.
Ajoutez «.env» à «.gitignore».
Le .env est désormais hors du contrôle de Git.
https://pikawaka.com/rails/dotenv-rails http://vdeep.net/rubyonrails-dotenv
[* Rails *] Comment utiliser la devise (version rails5) Réécrivez l'emplacement pour ajouter l'API Twitter à ENV []
config/initializer/devise.rb
config.omniauth :twitter, ENV['TWITTER_API_KEY'], ENV['DATABASE_URL']
Peut-être que DATABASE_URL et TWIITER_API_KEY, DATABASE_URL sont indispensables.
Configuration de l'interface graphique Heroku Config Vars ou [Paramètres de variable d'environnement de l'application Heroku (définis par CUI)](https://qiita.com/murakami- Set avec mm / items / 9587e21fc0ed57c803d0)
$ heroku config
=== <Nom de l'application> Config Vars
CLEARDB_DATABASE_URL: mysql://<Nom d'utilisateur>:<mot de passe>@<nom d'hôte>/<Nom de la base de données>?reconnect=true
--Définir les variables d'environnement Définissez chaque valeur affichée par la commande ci-dessus sur une variable.
$ heroku config:add DB_NAME='<Nom de la base de données>'
$ heroku config:add DB_USERNAME='<Nom d'utilisateur>'
$ heroku config:add DB_PASSWORD='<mot de passe>'
$ heroku config:add DB_HOSTNAME='<nom d'hôte>'
$ heroku config:add DB_PORT='3306'
$ heroku config:add DATABASE_URL='mysql2://<Nom d'utilisateur>:<mot de passe>@<nom d'hôte>/<Nom de la base de données>?reconnect=true'
DATABASE_URL
doit commencer par mysql2: //
.
Après avoir vérifié les paramètres, ce qui suit s'affiche.$ heroku config
=== <Nom de l'application> Config Vars
CLEARDB_DATABASE_URL: mysql://<Nom d'utilisateur>:<mot de passe>@<nom d'hôte>/<Nom de la base de données>?reconnect=true
DATABASE_URL: mysql2://<Nom d'utilisateur>:<mot de passe>@<nom d'hôte>/<Nom de la base de données>?reconnect=true
DB_HOSTNAME: <nom d'hôte>
DB_NAME: <Nom de la base de données>
DB_PASSWORD: <mot de passe>
DB_PORT: 3306
DB_USERNAME: <Nom d'utilisateur>
config / environnements / production.rb
(Les paramètres ici seront corrigés plus tard.)config.assets.compile = true
config.assets.initialize_on_precompile=false
De plus, définissez l'API Twitter créée avec «.env» de «gem'dotenv-rails» du côté heroku.
référence https://qiita.com/ymstshinichiro/items/d6ea229f6eb4778006c2 https://golikyua.hatenablog.com/entry/2020/01/09/135254 https://www.sejuku.net/blog/tutorial/111347
Recommended Posts