Foreman with Rails 3.2와 함께 RVM을 사용하고 있습니다. Foreman으로로드해야하는 내 응용 프로그램 루트 디렉토리에 .env 파일이 있습니다. 하지만 분명히 ENV['DATABASE_NAME']
을 database.yml
에 사용하면 레일을로드 할 수 없습니다. 하지만 이상하게도 하드 코드 된 데이터베이스 이름을 사용하여 레일을로드 한 후에 콘솔을 열어 ENV['DATABASE_NAME']
에 액세스 할 수있었습니다. 그리고 포먼은 실제로 Procfile
에 ENV
에 액세스 할 수 없습니다. 난 다른 하나의 이니셜 라이저는 devise.rb에 ENV
에 액세스 할 수있는 애플 리케이션을 가지고 있지만 database.yml
에 넣어, 그것은 서버를 시작하지만 괜찮을 때 페이지를 열 수 없습니다 애플 리케이션입니다 데이터베이스에 액세스하려고합니다. 그래서 레일 자체가로드 된 후 ENV가 레일로만로드되는 것처럼 보입니다. Procfile
및 database.yml
까지 어떻게 액세스 할 수 있도록 허용합니까?Foreman이 레일을로드하는 동안 환경 변수를 사용할 수 없습니다.
0
A
답변
1
프로필 및 .env의 예를 표시하면 다른 사람이 쉽게 도와 줄 수 있습니다.
질문에 대한 내 생각에 당신은 Procfile에서 env 변수를 잘못 사용하고있는 것입니다.
예를 들어 .env의 당신이있는 경우 PORT =이 $ PORT라고 있어요 프로필에 다음
3000 -하지 ENV [ 'PORT'] 루비 파일에서
등으로 ENV [ 'FOO']를 사용하는 구성 초기화 프로그램
귀하의 추측은 바로 선생님이었습니다! 나는 그것을 Procfile에서 잘못 사용하고 있었다. 그리고 당신의 생각에 따라 database.yml 파일에서 잘못 사용하고 있습니다. 이제 database.yml에서'<% ENV [ 'DATABASE_NAME'] %>'을 사용하고 있습니다. 감사. – randomor
도와 주셔서 기쁘게 생각합니다. 저는 여기에서도 많은 도움을 받았습니다. – jpwynn