2014-09-12 78 views
0

我在這裏按照這個教程。如何實際運行mozilla openbadges

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

它說,當你運行API使用這個命令源env_local

的問題是,我是新來的節點,真的不知道我是怎麼運行的API。我已經下載了所有的東西,安裝了節點,並且得到了一個簡單的hello world程序,它和node一起工作。我只是不知道我是如何運行API的。我以爲我已經跑procfile,但是當我做節點procfile我得到一個錯誤,說找不到模塊badegkit \ badgekit-API \啓動

作爲哈克屁股的解決方案,我想通了這一點。我嘗試將環境變量中的PATH設置爲env_local,並且在命令窗口中執行了SET path = env_local,但都無效。但是,如果您瀏覽到badgekit API文件夾,然後應用程序然後lib,那裏有一個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日編輯 對於那些好奇,截至目前,節點並不真正支持Windows本身。我在python和gyp上遇到了很多問題,最後我在hyper v中啓動了一個linux系統並在那裏託管它。

回答

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

所以幫助我在這裏。我想我的設置與節點源代碼,但我不能,我在Windows,如果我做 節點 源env_local 我剛剛得到這個http://i.imgur.com/sR6QHkl.png 。我如何設置源代碼以便運行db遷移文件? – 2014-09-12 19:39:22

+0

在Windows中,您可以在系統級別設置環境變量(例如,您將設置PATH變量的位置),或者僅使用SET variable = value命令窗口。一旦設置了這些,我希望NodeJS在運行時以相同的方式提取值。 – clay 2014-09-15 14:32:49

+0

所以你說運行節點之前做一些像SET source = env_local?或者運行一個節點窗口然後做那個?對不起,這對我來說都是新的。 – 2014-09-15 19:35:40