部署vue项目、安装mongodb

一、node运行环境



1、npm install -g n  


通过npm 全局安装node


2、sudo n 8.16.0 


设置node版本


Password:

install : node-v8.16.0

mkdir : /usr/local/n/versions/node/8.16.0

fetch : https://nodejs.org/dist/v8.16.0/node-v8.16.0-darwin-x64.tar.gz

######################################################################## 100.0%

installed : v8.16.0


3、node -v


v8.16.0


二、安装mongodb


1、brew tap mongodb/brew


2、brew install mongodb-community


=> Installing mongodb-community from mongodb/brew
==> Downloading https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-4.2.5.tgz
######################################################################## 100.0%
==> Caveats
To have launchd start mongodb/brew/mongodb-community now and restart at login:
brew services start mongodb/brew/mongodb-community
Or, if you don't want/need a background service you can just run:
mongod --config /usr/local/etc/mongod.conf
==> Summary
????  /usr/local/Cellar/mongodb-community/4.2.5: 21 files, 305.9MB, built in 7 minutes 4 seconds
(base) mengfaniaodeMBP:homebrew-core mengfanxiao$ cat usr/local/etc/mongod.conf
cat: usr/local/etc/mongod.conf: No such file or directory
(base) mengfaniaodeMBP:homebrew-core mengfanxiao$ brew services start mongodb/brew/mongodb-community
==> Successfully started `mongodb-community` (label: homebrew.mxcl.mongodb-community)


3、启动/停止


brew services start mongodb-community

brew services stop mongodb-community



4、配置


配置文件:/usr/local/etc/mongod.conf

日志目录路径:/usr/local/var/log/mongodb

数据目录路径:/usr/local/var/mongodb


5、端口


默认端口

介绍

27017

mongod 和 mongos 实例的默认端口。你可以通过 port 或 --port 改变该端口。

27018

设置 --shardsvr 运行变量或在配置文件里设置 clusterRole 为 shardsvr 时的默认端口。

27019

设置 --configsvr 运行变量或在配置文件中将 clusterRole 设置为 configsvr 时的默认端口。

28017

系统状态网页的默认端口。系统状态网络页面永远可以在比 port 大 1000 的端口反问。


三、问题梳理


1、环境问题


node -v


dyld: Library not loaded:

/usr/local/opt/icu4c/lib/libicui18n.64.dylib

Referenced from: /usr/local/bin/node

Reason: image not found

Abort trap: 6


说明node相关库已被损坏 需要重新安装


卸载node 

brew uninstall --ignore-dependencies node icu4c


Uninstalling /usr/local/Cellar/node/13.5.0... (4,663 files, 59.1MB)

node 12.12.0 is still installed.

Run `brew uninstall --force node` to remove all versions.


安装node

brew install node 

通过这种方式安装的是最新版本的node 但很容易出现版本不兼容问题 所以不推荐这么安装 建议安装node8 该版本比较稳定 很少出现与其他软件不兼容情况 


2、文件创建权限问题


==> Installing dependencies for node: icu4c
==> Installing node dependency: icu4c
==> Downloading https://mirrors.aliyun.com/homebrew/homebrew-bottles/bottles/icu4c-64.2.mojave.bottle.tar.gz
######################################################################## 100.0%
==> Pouring icu4c-64.2.mojave.bottle.tar.gz
Error: Failed to create /usr/local/opt/icu4c
Things that depend on icu4c will probably not build.
Could not symlink .
/usr/local/opt is not writable.
==> Caveats


a、创建文件夹

sudo mkdir  /usr/local/opt

 b、root用户赋予当前用户操作该文件夹权限


此时该文件夹权限属于root 给mengfanxiao账户赋予权限

chown -R mengfanxiao /usr/local/opt


3、插曲 springboot启动问题 


dea启动spring-boot,报java.lang.NoClassDefFoundError: javax/servlet/ServletContext错误


<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-tomcat</artifactId>

<scope>provided</scope>

</dependency>

把scope注释掉即可


maven中三种classpath

编译,测试,运行

1.compile:默认范围,编译测试运行都有效

2.provided:在编译和测试时有效

3.runtime:在测试和运行时有效

4.test:只在测试时有效

5.system:在编译和测试时有效,与本机系统关联,可移植性差



4、环境不匹配问题


Node Sass does not yet support your current environment: OS X 64-bit with Unsupported runtime (79)qi


卸载重装(最新版本的node-sass)即可:

npm uninstall node-sass -D

npm install node-sass -D


5、版本冲突问题 node和mongodb版本不兼容

mongodb-core@1.2.31 requires a peer of kerberos@~0.0


node -v   v13.12.0

npm -v   6.14.4


gyp ERR! command "/usr/local/Cellar/node/13.12.0/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /Users/mengfanxiao/Documents/project/company/wechain/questionnaire/node_modules/leveldown

gyp ERR! node -v v13.12.0

gyp ERR! node-gyp -v v5.1.0

gyp ERR! not ok

npm WARN mongodb-core@1.2.31 requires a peer of kerberos@~0.0 but none is installed. You must install peer dependencies yourself.


这种情况需要安装node8


brew search node


==> Formulae

libbitcoin-node     node                node-sass           node@12             nodebrew            nodenv

llnode              node-build          node@10             node_exporter ✔     nodeenv


如果有node8 

则 brew install node@8

然后brew link --overwrite --force node@8



没有node8 


npm install -g n

sudo n 8.16.0


安装了node8版本


npm install

> leveldown@1.7.2 install /Users/mengfanxiao/Documents/project/company/wechain/new/questionnaire/node_modules/level/node_modules/leveldown

> prebuild-install || node-gyp rebuild

added 42 packages from 44 contributors in 20.79s


6、安装mongodb问题

    

brew install mongodb

Error: No available formula with the name 'mongodb'

MongoDB不再是开源的了,并且已经从Homebrew中移除 #43770


安装MongoDB社区服务器的最新可用生产版本(包括所有命令行工具)。这将安装MongoDB 4.2.x:

$ brew install mongodb-community

安装MongoDB社区服务器和命令行工具的最新4.2.x生产版本:

$ brew install mongodb-community@4.2

安装MongoDB社区服务器和命令行工具的最新4.0.x生产版本:

$ brew install mongodb-community@4.0

安装MongoDB社区服务器和命令行工具的最新3.6.x生产版本:

$ brew install mongodb-community@3.6

仅安装最新的mongoshell以连接到远程MongoDB实例:

$ brew install mongodb-community-shell

上一篇:LINUX安装安装YUM。


下一篇:Akamai在Gartner“Web应用程序防火墙魔力象限”中处于领导者位置