freeCodeCamp/guide/chinese/miscellaneous/how-to-install-the-mean-sta.../index.md

117 lines
4.6 KiB
Markdown
Raw Normal View History

---
title: How to Install the Mean Stack on Mac Osx
localeTitle: 如何在Mac Osx上安装Mean Stack
---
要安装MongoDB您应该安装Mac OS X 10.6Snow Leopard或更高版本。要找出您拥有的OS X版本请单击屏幕左上角的图标然后选择“ `About This Mac`
![:warning:](//forum.freecodecamp.com/images/emoji/emoji_one/warning.png?v=2 ":警告:") **警告:**在执行以下任何步骤之前请执行Time Machine备份
## 第1步安装MongoDB
在OS X上安装MongoDB的最简单方法是使用[HomeBrew](http://brew.sh/) 。如果您之前没有使用过HomeBrew只需在终端窗口中执行以下命令
```
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
```
成功安装HomeBrew后请使用以下命令
```
brew update && brew install mongodb
```
HomeBrew将自动为您安装所有依赖项。
## 第2步安装Node.js.
再一次我们会让HomeBrew做繁重的工作
```
brew install node
```
npm可执行文件已包含在Node.js包中。
在继续之前让我们确保其他人可以找到Node.js模块 ![:warning:](//forum.freecodecamp.com/images/emoji/emoji_one/warning.png?v=2 ":警告:") **注意** :最好复制并粘贴这些命令,因为如果键入`>`代替`>>` ,则会丢失`.bashrc`文件的原始内容:
```
echo 'export NODE_PATH="./node_modules:/usr/local/lib/node_modules"' >> ~/.bashrc && source ~/.bashrc
```
要检查配置是否有效,请执行:
```
echo $NODE_PATH
```
您应该在命令下面看到`./node_modules:/usr/local/lib/node_modules` 。
如果使用与Bash不同的shell只需将`~/.bashrc`替换为shell配置文件即可。
## 第3步安装fullstack工具
```
npm install -g express yo grunt grunt-cli generator-angular-fullstack bower
```
## 第4步生成一个fullstack应用程序
为您的后端项目项目创建一个目录。假设您的桌面是您事实上的工作区:
```
mkdir ~/Desktop/Back End Projects && cd ~/Desktop/Back End Projects
```
现在所有准备工作都已到位,现在是主赛事的时候了:
```
yo angular-fullstack
```
根据[挑战的](http://www.freecodecamp.com/challenges/get-set-for-our-back-end-development-projects)核对表项目13-23回答问题[:为后端项目设置](http://www.freecodecamp.com/challenges/get-set-for-our-back-end-development-projects) 。如果您遇到错误请咨询24-27 。这将下载约350MB的文件到您当前的目录中。
在继续之前,我们需要在一些生成的文件中修复[已知问题](https://github.com/clnhll/guidetobasejumps#fixing-exportsupdate)
```
echo "sed -i '' -e 's/_.merge/_.extend/' server/api/*/*.controller.js" > \
fix-exports-update.sh && chmod +x fix-exports-update.sh && \
./fix-exports-update.sh
```
每次生成新的API端点时都需要运行`./fix-exports-update.sh` (直到他们修复此上游,即)。
## 第5步初始化本地Git存储库
告诉Git不要跟踪你的数据库
```
echo "data" >> .gitignore
```
通过运行以下命令将应用程序所在的目录转换为Git存储库
```
git init && git add . && git commit -am 'initial commit'
```
## 第6步启动MongoDB
要在应用程序目录中首次启动MongoDB请在终端中运行以下命令
```
mkdir data && echo 'mongod --config /usr/local/etc/mongod.conf --dbpath=data --rest "$@" --httpinterface' > mongod.sh && chmod a+x mongod.sh && ./mongod.sh
```
从这一点开始,您可以通过执行`./mongod.sh`来启动MongoDB。有几点需要注意
* `.conf`文件指示`mongod`将消息写入日志文件而不是stdout。要查看日志请在单独的“终端”选项卡中运行以下命令 `less /usr/local/var/log/mongodb/mongo.log`
* 由于我们不在Cloud9上因此我们不需要`--nojournal`选项。日记功能允许您在`mongod`崩溃的情况下恢复数据库。
* 您必须为每个项目创建一个干净的数据库。如果从早期项目复制`data`目录,则`mongod`将无法启动。如果是这种情况,只需`rm -rf data && mkdir data && ./mongod.sh` 。
## 第7步启动Grunt
按`⌘T`打开一个新的终端选项卡,然后运行以下命令:
```
grunt serve
```
Grunt应在启动完成后自动打开新的Angular站点的索引页面。
现在您应该能够按照其余的挑战说明推送到GitHub和Heroku。只需忽略有关SSH密钥的部分33-36并将`~/workspace`替换为您的app目录的路径。
## 脚注
以下步骤在以下配置下进行测试:
* OS X 10.10.5
* zsh 5.0.8x86\_64-apple-darwin14.3.0
* 节点v0.12.7
* npm 2.11.3