2015-01-14 2 views
2

mina로 내 앱을 배포하려고합니다. 내가Mina 및 Devise.secret_key가 설정되지 않았습니다.

config.secret_key = ENV["SECRET_KEY_BASE"] 어떻게 내 응용 프로그램에이 키를 추가해야 내 유증 이니셜 라이저에서

-----> Migrating database 
rake aborted! 
Devise.secret_key was not set. Please add the following to your Devise initializer: 

    config.secret_key = 'key here.......' 

Please ensure you restarted your application after installing Devise or setting the key. 
......... 

: 이 때 내가이 오류가 발생했습니다 마이그레이션을 실행하기 시작? secret_key_base와 secret_key가 다른가요?

이것은 어리석은 일이지만이 키를 추가하는 방법을 모른다.

로컬로 모든 것을 내가 당신의 레일을 열

답변

1

deploy.rb

set :shared_paths, ['config/database.yml', 'log', 'config/secrets.yml'] 

를 추가하고 해결이처럼 응용 프로그램에 YAML 파일을 가져올 수 후

내 문제. secrets.yml에서

는이 코드를 노출 DEVISE_SECRET

1

피가로 사용하고 응용 프로그램 폴더에 가서 잘

PS를 작동

설정에/초기화/devise.rb

및 코드 줄을 붙여 넣기

config.secret_key = ***** 

***** 문자열 Y는 : 끝 오류가 나면 우리 콘솔에서 알려줍니다. 당신이 enviorment 변수를 원하는 경우

하면, 다른 방법을 이동 예를 들어이에 위의 코드 라인을 대체 할 수있다 :

config.secret_key = ENV['DEVISE_SECRET_KEY'] 

는 다음이 변수를 만들 수 있습니다를 환경 변수로

keys.yml 파일에서 ./gitignore 파일에 추가하십시오.

설정/application.rb :

ENV.update YAML.load(File.read(File.expand_path('../keys.yml', __FILE__))) 
    module yourApp 
    ... 
    ... 
    end 
+0

이 확인인가를 설정? 그것은 자식에 표시됩니다. 이것이 내가 걱정하는 것입니다. – kirqe

+0

git에 저장하는 경우 환경 변수를 사용하여 키를 저장합니다. 예 :'ENV [ 'DEVISE_SECRET_KEY']' – Jordan

+0

나는 env var에 저장하지만 mina로 배포 할 때이 키를 볼 수 없다. – kirqe