2014-09-12 8 views
0

여기에서이 자습서를 수행합니다. 당신이 API는mozilla openbadges를 실제로 실행하는 방법

문제가 env_local이 명령 소스를 사용 실행할 때

https://github.com/mozilla/openbadges-badgekit/wiki/BadgeKit-Self-Hosting-Guide#badgekit-api-configuration

그것은 내가 API를 실행하는 방법을 정말 확실 노드에 새로운 아니에요 말했다. 모든 것을 다운로드하고, 노드를 설치했으며 노드로 작업하는 간단한 hello world 프로그램을 가지고 있습니다. API를 실제로 어떻게 실행하는지 모르겠습니다. procfile을 실행해야한다고 생각했지만 procfile 노드를 만들 때 badegkit \ badgekit-api \ start 모듈을 찾을 수 없다는 오류가 발생했습니다.

해커 엉덩이 솔루션으로 나는 이것을 알아 냈습니다. 나는 env_local 환경 변수에 PATH를 설정하려고했지만 명령 창에서 SET path = env_local을 수행하는 것 외에는 아무 일도하지 않았다. 그러나 badgekit api 폴더를 탐색 한 다음 lib, app, db.js 파일을 검색하면됩니다.

내가 한 일은 다음과 같습니다. 그 내용은 주석 처리되었습니다.

var options = { 
    driver: 'mysql', 
    // host: process.env.DB_HOST, 
    // user: process.env.DB_USER, 
    // password: process.env.DB_PASSWORD, 
    // database: process.env.DB_NAME, 
    host: "127.0.0.1", 
    user: "username", 
    password: "password", 
    database: "dbname", 
} 

그냥 mysql creds에 넣은 다음 db migrate를 실행할 수 있습니다. 분명히이 ENV 여전히 터져 될 것입니다 사용하는 다른 어느 곳으로 적합하지 않습니다, 그러나 그것은 나를 지금의 궁금 모든 2.

2014년 9월 29일 편집 , 단계있어, 노드는 윈도우 자체에서 실제로 지원되지 않습니다. 나는 파이썬과 gyp에서 많은 문제를 겪었는데, 결국 하이퍼 v로 리눅스 박스를 회전시키고 거기에 호스팅했다.

답변

0

해당 명령의 배경은 env_local에 환경 변수 설정을로드하는 것입니다. deafult에 의해, 그들은 몇 가지 export 명령으로 설정되며, key = value 쌍을 실행 환경에 놓아야합니다.

나는 실제로 그렇게의 파일 내보내기 문자열을 제거하고 .env_dev로 저장 :

DB_HOST=localhost 
DB_NAME=badgekitapi 
...etc... 

그리고 그 명령은 내가 일을 실행하는 데 사용했다 : nf start -e .env_dev

API를 실행으로

및 수 배지를 저장하려면 자습서를 따라 openbadges-badgekit을 실행할 수 있습니다. 따라서 실제로 배지를 만들고 발행 할 수 있습니다.)

행운을 빌어 요!

+0

여기 나를 도와주세요. 내가 노드 내 소스를 설정하기 위해 노력하고있어하지만 난 창문에있어 수없고 내가 env_local 노드 소스를한다면 난 그냥이 얻을 http://i.imgur.com/sR6QHkl.png . db 마이그레이션 파일을 실행할 수 있도록 원본을 어떻게 설정합니까? –

+0

Windows에서 시스템 레벨 ('PATH' 변수를 설정할 곳)에서 환경 변수를 설정하거나'SET variable = value'로 명령 창을 설정할 수 있습니다. 일단 이들이 설정되면 NodeJS가 실행될 때와 같은 방식으로 값을 끌어낼 것으로 예상됩니다. – clay

+0

그래서 노드를 실행하기 전에 SET source = env_local과 같은 명령을 내리라고 말하고 있습니까? 또는 노드 창을 실행 한 다음 그 작업을 수행합니까? 죄송합니다.이 모든 것이 저에게 새로운 것입니다. –