服务器环境:CentOs 7.3 64位
设置ssh连接的公钥和私钥以及免密登录
在根目录查看有没有.ssh文件夹
1 | [root@ip地址 ~]# ls -a |
如果有 .ssh 文件夹,那么进入 .ssh,查看有没有 id_rsa 和 id_rsa.pub 文件
1 | [root@ip地址 .ssh]# ls -a |
如果都有上面提到的文件,则说明已经生成过了公钥和私钥,不必进行下面的操作的;
如果没有 .ssh 或者没有 id_rsa 和 id_rsa.pub,则进行下面的操作
1 | [root@ip地址 .ssh]# ssh-keygen -t rsa -b 4096 -C "1329105041@qq.com" |
执行了上面的指令后,一路回车。然后在查看根目录,会发现多出了 .ssh 文件夹及其目录下的 id_rsa 和 id_rsa.pub 文件
1 | [root@ip地址 .ssh]# ls -a |
然后将其加入代理
1 | [root@ip地址 .ssh]# eval "$(ssh-agent -s)" |
如果在 .ssh文件夹下没有 authorized_keys 文件,则可以进入 .ssh 文件夹进行生成,如果有该文件,则忽略此次操作
1 | [root@ip地址 .ssh]# vi authorized_keys |
执行完上面的指令后,会进入到 authorized_keys 的编辑页面,然后将本地电脑的公钥粘贴到此文件中。然后退出该文件。经过上述操作后,会发现 .ssh 文件夹多了一个 authorized_keys 文件。authorized_keys 文件是一个授权文件(此时该文件是在远程的服务器上),如果本地电脑想要登录该服务器,那么将本地电脑的公钥存放在该服务器的 authorized_keys 文件里。当本地电脑登录该服务器时,服务器会验证本地电脑的私钥以及刚才在 authorized_keys 文件保存的公钥,当算法匹配之后,本地电脑才可以免密登录到该服务器。
接着给 authorized_keys 文件设置权限
1 | [root@ip地址 .ssh]# chmod 600 authorized_keys |
重启 ssh 服务
1 | [root@ip地址 .ssh]# sudo service ssh restart |
现在在本地电脑(此处是 mac 的终端)可以免密登录服务器
1 | ~ ssh root@ip地址 |
执行上面的指令即可免密连接到服务器。
安装nodejs环境
服务器环境:CentOS 7.3 64位
如无特殊说明,以下操作都是在该环境下配置
安装一些常用依赖
1 | sudo yum install vim openssl build-essential libssl-dev wget curl git |
安装 node 版本管理器(nvm-sh/nvm)
1 | wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash |
安装对应的 node 版本(此处安装的是v10.16.3)
1 | nvm install v10.16.3 |
使用 registry 参数,让 npm 在淘宝镜像源下载
1 | npm --registry=https://registry.npm.taobao.org install -g npm |
或者直接给 npm 的下载源设置为淘宝的镜像源,这样每次用 npm 下载的时候都是在淘宝镜像源下载的
1 | npm config set registry https://registry.npm.taobao.org |
也可以还原官方的下载源
1 | npm config set registry https://registry.npmjs.org/ |
增加系统文件的监控数目
1 | echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p |
为了保证更快更稳定的安装速度,有时候可以采用 cnpm 替代 npm
1 | npm --registry=https://registry.npm.taobao.org install -g cnpm |
如果网络不是连不上或者太慢的情况下,推荐使用 npm;如果一些模块的确是拉取不到,是可以用 cnpm 进行同步的,比如,现在想安装 koa,如果 npm 安装不上的话,可以通过 cnpm 同步一下这个模块,它会强制从 npm 那里把模块拿到国内的镜像中去。
1 | cnpm sync koa |
安装常见模块
1 | npm i pm2 webpack gulp grunt-cli -g |
测试 node 环境
开放你所要测试的服务器端口,操作详见 阿里云服务器配置开放端口 ,也可以编写 iptable 来开放一些端口,但这样做会比较麻烦,建议还是使用前者配置方法
写一个 app.js 文件,然后 ndoe app.js
运行该文件
1 | // app.js |
然后在本地浏览器访问 http://172.16.142.162:8081
,如果浏览器页面出现 “这是首页” 的字样,说明 node 环境搭建成功。
pm2
pm2 能够让 node 程序在服务器中稳定的运行,即使关闭了连接服务器的会话窗口,node 程序也还在服务器中稳定的运行。
1 | 运行 app.js |
nginx
安装 nginx
1 | sudo yum install nginx |
配置nginx
首先进入 etc/nginx 目录下的conf.d 文件夹,然后创建配置文件 vigor666-com-8081.conf(我的命名规则:域名-域名后缀-端口号),
1 | cd /etc/ngnix/conf.d |
配置 vigor666-com-8081.conf 文件
1 | upstream vigor666 { |
此处的配置是将服务器的 8081端口映射到公网 ip 地址的 80 端口,则本地电脑访问公网 ip 地址的 80 端口时,实际上访问的是服务器上的 8081端口的服务
注意:要记得开放服务器的 80 端口访问权限,否则是访问不到服务器的 80 端口的
配置完 vigor666-com-8081.conf 文件后,返回上一层目录(即 nginx 目录),
1 | [root@ip地址 conf.d]# cd ../ |
查看 nginx.conf 文件里面的 include /etc/nginx/conf.d/*.conf;
有没有去掉注释,如果没有去掉注释,则应该去掉注释,其他不用更改
1 | for more information. |
测试刚才的 vigor666-com-8081.conf 文件有没有配置成功
1 | [root@ip地址 conf.d]# sudo nginx -t |
出现上面情况说明已成功配置
重启 nginx
1 | [root@ip地址 nginx]# sudo nginx -s reload |
上面的执行出现错误,此时应该先执行 nginx -c /etc/nginx/nginx.conf
,在执行 sudo nginx -s reload
,这样就不会错了。
iptable
1 | *filter |
MongoDB
详见:Install MongoDB Community Edition on Red Hat Enterprise or CentOS Linux
使用.rpm包**(推荐)**
-
配置程序包管理系统(yum)。
创建一个
/etc/yum.repos.d/mongodb-org-4.2.repo
文件,以便您可以使用yum直接安装MongoDB:1
2
3
4
5
6[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc注意:
您可以在存储库本身中找到每个发行版的.repo文件。 编号为奇数的次要发行版本(例如3.5)是开发版本,不适合生产使用。
-
安装MongoDB软件包。
要安装最新的稳定版MongoDB,请执行以下命令:
1
sudo yum install -y mongodb-org
另外,要安装特定版本的MongoDB,请分别指定每个组件包,并将版本号附加到包名中,如以下示例所示:
1
sudo yum install -y mongodb-org-4.2.0 mongodb-org-server-4.2.0 mongodb-org-shell-4.2.0 mongodb-org-mongos-4.2.0 mongodb-org-tools-4.2.0
您可以指定任何可用的MongoDB版本。 但是,当有新版本可用时,yum会升级软件包。 为防止意外升级,请固定包装。 要固定软件包,请在
/etc/yum.conf
文件中添加以下exclude指令:1
exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools
使用Tarballs
预备条件
MongoDB .tar.gz tarball需要安装以下依赖项:
1 | yum install libcurl openssl |
安装过程
-
下载MongoDB .tar.gz tarball。
从MongoDB下载中心下载适用于您系统的tarball。
-
从下载的档案中提取文件。
例如,从系统外壳程序中,可以使用tar命令提取:
1
tar -zxvf mongodb-linux-*-4.2.0.tgz
-
确保二进制文件在PATH环境变量中列出的目录中。
MongoDB二进制文件位于tarball的
bin/
目录中。 您必须:- 将这些二进制文件复制到PATH变量中列出的目录中,例如
/ usr / local / bin
, - 从PATH变量中列出的目录中创建指向这些二进制文件中每个文件的符号链接
- 或者修改用户的PATH环境变量以包含此目录。
例如,您可以将以下行添加到Shell的初始化脚本中(例如,〜/ .bashrc):
1
export PATH=<mongodb-install-directory>/bin:$PATH
将
<mongodb-install-directory>
替换为提取的MongoDB归档文件的路径。 - 将这些二进制文件复制到PATH变量中列出的目录中,例如
开启 MongoDB 服务
1 | sudo service mongod start |
查看 MongoDB 的日志,看是否已经开启了 MongoDB 的服务
1 | cat /var/log/mongodb/mongod.log |
尝试连接 MongoDB
1 | mongo |
终止MongoDB服务
1 | sudo service mongod stop |
重启 MongoDB 服务
1 | sudo service mongod restart |
yarn
在CentOS,Fedora和RHEL上,您可以通过我们的RPM软件包存储库安装Yarn。
1 | curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo |
如果尚未安装Node.js,则还应该配置NodeSource存储库:
1 | curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash - |
然后,您可以简单地:
1 | sudo yum install yarn |
环境变量设置
如果未在 PATH 环境变量中找到 yarn,请按照以下步骤添加 yarn 到 PATH 环境变量中,使其可以随处运行。
注意:您的配置文件可能是 .profile
、.bash_profile
、.bashrc
、.zshrc
等。
- 将此项加入您的配置文件:
export PATH="$PATH:/opt/yarn-[version]/bin"
(路径可能根据您安装 Yarn 的位置而有差异) - 在终端中,执行登录并登出以使更改生效
为了可以全局访问 Yarn 的可执行文件,你需要在您的终端中设置 PATH
环境变量。若要执行此操作,请添加 export PATH="$PATH:
yarn global bin"
到您的配置文件中。
通过如下命令测试 Yarn 是否安装成功:
1 | yarn --version |
SSL 证书
可免费申请的 SSL 证书的平台有:又拍云、腾讯云、阿里云、七牛云。
服务器帮助文档:https://help.aliyun.com/?spm=5176.8097504.fszjobuve.19.2ec76fb5rFu3lS