入手阿里云新服務(wù)器的部署NODE

入手后先用 'yum -y update' 來(lái)升級(jí)一下

1. 設(shè)置非root用戶(hù)

  1. 新增用戶(hù)
useradd 用戶(hù)名
passwd 密碼
  1. 設(shè)置ssh
    新增用戶(hù)之后就設(shè)置root為非ssh登錄的裂允,新用戶(hù)可以ssh登錄:修改/etc/ssh/sshd_config
    PermitRootLogin:yes --> PermitRootLogin:no

這樣就可以禁止root用戶(hù)登錄了。

  1. 附上一些命令
    useradd         //添加用戶(hù)
    passwd          //為用戶(hù)設(shè)置密碼   
    userdel         //刪除用戶(hù)
    usermod         //修改用戶(hù)信息
    groupadd       //添加用戶(hù)組
    groupdel        //刪除用戶(hù)組
    groupmod        //修改用戶(hù)組信息
    groups          //顯示當(dāng)前進(jìn)程用戶(hù)所屬的用戶(hù)組

2. 配置git

  1. 思路
    我們假設(shè)你在服務(wù)器上設(shè)置了一個(gè)叫做a的用戶(hù)速侈,那么我們上線的代碼現(xiàn)在自己電腦上寫(xiě)好薄扁,push到git服務(wù)器上剪返,再在由a用戶(hù)pull下來(lái)上線废累。那么我們?cè)趓oot上面創(chuàng)建一個(gè)共享的倉(cāng)庫(kù),這樣自己的電腦和用戶(hù)a都可以向這個(gè)倉(cāng)庫(kù)拉取和提交代碼脱盲。那么這個(gè)git服務(wù)器服務(wù)器應(yīng)該如何搭建呢邑滨?其實(shí)就是新增一個(gè)git用戶(hù)
useradd git
passwd 密碼
//以下為升級(jí)git的,centos的yum能安裝的git最多去到1.7
//因此需要安裝2.X 的git的話钱反,先卸載掖看,再下載源碼編譯安裝
yum remove git 
//在https://www.kernel.org/pub/software/scm/git上選擇你要的版本
src wget https://www.kernel.org/pub/software/scm/git/git-2.10.0.tar.gz
//安裝必要工具包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install gcc perl-ExtUtils-MakeMaker
//解壓
tar xzf git-2.10.0.tar.gz
cd git-2.10.0
make prefix=/usr/local/git all
make prefix=/usr/local/git install
echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
source /etc/bashrc
  1. 搭建
    2.1. 配置
    // 在/srv下創(chuàng)建git文件夾,再在git里面創(chuàng)建空倉(cāng)庫(kù)
    cd /srv
    mkdir git
    cd git
    git init --bare project.git // project為項(xiàng)目名字面哥,自定義的
    //成功就會(huì)顯示:Initialized empty Git repository in /srv/git/project.git/
    // 把所有權(quán)給git 用戶(hù)
    cd ../
    chown -R git:git git
    //在自己電腦上:
    git clone git@服務(wù)器IP:/srv/git/project.git      
    /*以上的文字很不幸的出現(xiàn)了很多git ,看清楚git其實(shí)分別對(duì)應(yīng)了文件夾名字哎壳,git命令還有用戶(hù)名三個(gè)東西就好了*/

2.2 安全
處于安全考慮,我們應(yīng)該禁用git用戶(hù)的shell登陸幢竹。

    vim /etc/passwd
    //找到這一行
    git:x:1001:1001:,,,:/home/git:/bin/bash  
    //改成
    git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell  

這樣耳峦,git用戶(hù)可以正常通過(guò)ssh使用git恩静,但無(wú)法登錄shell焕毫,因?yàn)槲覀優(yōu)間it用戶(hù)指定的git-shell每次一登錄就自動(dòng)退出。

3. 安裝node

  1. node安裝
    //該方法是源碼編譯安裝驶乾,比較慢
    //確保gcc安裝
    yum -y install gcc
    //下載node 這里可以去官網(wǎng)看看你要的版本號(hào)
    wget https://nodejs.org/dist/v5.6.0/node-v5.6.0.tar.gz
    //解壓
    tar -zvxf node-v5.6.0.tar.gz 
    // 開(kāi)啟配置邑飒,編譯
    cd node-v5.6.0
    ./configure
    make && make install
    //要能業(yè)務(wù)化的話 pm2 && express 都不可少
    npm i -g n //升級(jí)node用的
    npm i -g express
    npm i -g pm2
  1. pm2的配置
    //pm2開(kāi)機(jī)啟動(dòng)
    pm2 startup centos
    //創(chuàng)建一個(gè)processes.json文件
    {
        "apps": [
            {
                "name": "xxx",
                "script": "./bin/www",
                "log_date_format": "YYYY-MM-DD HH:mm Z",
                "log_file"   : "./logs/xxx.log",
                "error_file" : "./logs/xxx.log",
                "out_file"   : "./logs/xxx.log",
                "merge_logs": true,
            }
        ]
    }
    //保存退出后啟動(dòng)
    pm2 start processes.json

4. 安裝配置nginx

  1. 安裝
    yum install nginx
    cd /etc/nginx
    //這里開(kāi)始修改配置
    vim nginx.conf 
    //-> 這里不細(xì)說(shuō)明配置:只需要找到conf里面有沒(méi)有這一段:include /etc/nginx/conf.d/*.conf;
    // 退出之后進(jìn)入/etc/nginx/conf.d目錄,新建一個(gè)配置文件
    vim xxx.com.conf  //xxx.com是你的域名名字
  1. 配置文件
//xxx.com.conf
upstream node {
    server 127.0.0.1:3000;
}
server {
    listen       80 default_server;
    server_name  xx.com www.xx.com;
    include /etc/nginx/default.d/*.conf;
    location / {
        proxy_pass http://node;
    }
    access_log xx/access.log main;
}
  1. nginx的一些命令
//測(cè)試配置文件是否出錯(cuò)
nginx -t -c /etc/nginx/nginx.conf
//啟動(dòng)
service nginx start
//重啟
service nginx restart
  1. 新增SSL配置文件實(shí)例
upstream node {
  server 127.0.0.1:3000;
}
server {
  listen 443 ssl;
  server_name  ***; #你的域名

  ssl on;
  ssl_certificate   ***.pem; #pem文件路徑
  ssl_certificate_key  ***.key; #key文件路徑
  ssl_session_timeout 5m;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
  ssl_prefer_server_ciphers on;
  # 禁止爬蟲(chóng)级乐!如果你要做SEO的話疙咸!這個(gè)最好就不要咯
  if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot"){return 403;}

  location / {
    deny 123.126.113.134;
    deny 111.251.93.84;
    proxy_pass http://node;
  }
  access_log  *.log main;
}

5. 安裝配置redis

  1. 安裝
    yum install gcc-c++
    yum install -y tcl
    yum install wget
    //在官網(wǎng)http://redis.io/拿到下載鏈接
    wget 鏈接
    //解壓 進(jìn)入目錄 編譯 安裝
    tar -xzvf redis
    mv redis /usr/local/redis
    cd /usr/local/redis
    make 
    make install

2.配置

    mkdir /etc/redis
    mkdir /var/redis
    mkdir /var/redis/log
    mkdir /var/redis/run
    mkdir /var/redis/6379
    //在redis解壓根目錄中找到配置文件模板,復(fù)制到如下位置风科。
    cp /usr/local/redis/redis.conf /etc/redis/6379.conf
    //通過(guò)vim命令修改
    daemonize yes
    requirepass 密碼
    pidfile /var/redis/run/redis_6379.pid
    logfile /var/redis/log/redis.log
    dir /var/redis/6379
    //最后運(yùn)行redis:
    redis-server /etc/redis/6379.conf
    //測(cè)試鏈接
    redis-cli -h 127.0.0.1 -p 6379 -a ''
    //開(kāi)關(guān)
    service redis_6379 stop
    service redis_6379 start
    
  1. 開(kāi)機(jī)啟動(dòng)
    確定已經(jīng)執(zhí)行了第二步的配置撒轮,保證daemonize yes
    echo "/usr/local/redis/src/redis-server /etc/redis/6379.conf &" >> /etc/rc.local

6. 安裝配置數(shù)據(jù)庫(kù)MySQL

  1. 簡(jiǎn)單的安裝
    1.1 服務(wù)器端
    阿里云上的centos7.0系統(tǒng)。因?yàn)樵赾entos直接搜索mysql是木有這個(gè)軟件的(原因自己百度)贼穆,只有mariadb题山,你可以把它當(dāng)成名字不用而已就好了。
    安裝很簡(jiǎn)單:
//安裝
yum install mariadb mariadb-server
//啟動(dòng)
systemctl start mariadb 
//開(kāi)機(jī)啟動(dòng)
systemctl enable mariadb
//root密碼等相關(guān)
mysql_secure_installation
//登錄
mysql -u root -p
//創(chuàng)建新用戶(hù)
create user 'username'@'localhost' identified by 'password'

1.2 開(kāi)發(fā)機(jī)器上
手上的是MacBook故痊,簡(jiǎn)單的去官網(wǎng)下載Mysql來(lái)點(diǎn)開(kāi)安裝就可以了顶瞳。接下來(lái)推薦一個(gè)圖形界面的工具:mysqlWorkBench。也是直接下載后點(diǎn)開(kāi)安裝愕秫。
注意:新版的Mysql安裝后之后彈窗給你一個(gè)初始化密碼的

  1. 遠(yuǎn)程登陸
    由于我們剛才新建的用戶(hù)的host定義了localhost慨菱,所以在開(kāi)發(fā)機(jī)器上是沒(méi)辦法登陸的。因此需要用調(diào)整一下
//用root登陸
mysql -u root -p
//進(jìn)入mysql數(shù)據(jù)庫(kù)
use mysql;
// 修改host為通配符%
update user set host='%' where user='username';
// 查看一下
select host, user from user;
flush privileges;
  1. 分配權(quán)限
    這時(shí)候我們能在開(kāi)發(fā)機(jī)器上登陸新建的用戶(hù)了戴甩,當(dāng)時(shí)確發(fā)現(xiàn)沒(méi)啥權(quán)限符喝,做啥都做不了,所以應(yīng)該分配一些權(quán)限給他甜孤。
//用root登陸
mysql -u root -p
//創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)(create database sanyuelanv)
create database databaseName
//授予用戶(hù)操作這個(gè)數(shù)據(jù)庫(kù)的所有權(quán)限
grant all on databaseName.* to username@'%';
flush privileges;

后記1:zsh

因?yàn)閭€(gè)人喜好用ZSH洲劣,所以把bash替換成zsh备蚓,再加上oh-my-zsh。這樣才覺(jué)得舒服囱稽。

    echo $SHELL //查看當(dāng)前的shell郊尝,一般的結(jié)果都是/bin/bash
    cat /ect/shells //查看bin下面是否有zsh
    yum install zsh //安裝zsh
    cat /ect/shells //再次查看
    chsh -s /bin/zsh  //切換zsh
    reboot   //重啟
    //重啟完成之后
    yum install git  //安裝git
    //安裝oh-my-zsh,裝好之后切換用戶(hù)或者重啟一下
    wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh  
    //如果出現(xiàn):warning: cannot set LC_CTYPE locale的錯(cuò)誤
    vim /etc/profile 
     //后面加上這兩行
    export LC_ALL=en_US.UTF-8
    export LC_CTYPE=en_US.UTF-8
    //保存退出后生效
    source /etc/profile

后記2:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末战惊,一起剝皮案震驚了整個(gè)濱河市流昏,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌吞获,老刑警劉巖况凉,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異各拷,居然都是意外死亡刁绒,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén)烤黍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)知市,“玉大人,你說(shuō)我怎么就攤上這事速蕊∩┍” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵规哲,是天一觀的道長(zhǎng)跟啤。 經(jīng)常有香客問(wèn)我,道長(zhǎng)唉锌,這世上最難降的妖魔是什么隅肥? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮袄简,結(jié)果婚禮上腥放,老公的妹妹穿的比我還像新娘。我一直安慰自己痘番,他們只是感情好捉片,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著汞舱,像睡著了一般伍纫。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上昂芜,一...
    開(kāi)封第一講書(shū)人閱讀 49,166評(píng)論 1 284
  • 那天莹规,我揣著相機(jī)與錄音,去河邊找鬼泌神。 笑死良漱,一個(gè)胖子當(dāng)著我的面吹牛舞虱,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播母市,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼矾兜,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了患久?” 一聲冷哼從身側(cè)響起椅寺,我...
    開(kāi)封第一講書(shū)人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蒋失,沒(méi)想到半個(gè)月后返帕,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡篙挽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年荆萤,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片铣卡。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡链韭,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出算行,到底是詐尸還是另有隱情梧油,我是刑警寧澤苫耸,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布州邢,位于F島的核電站,受9級(jí)特大地震影響褪子,放射性物質(zhì)發(fā)生泄漏量淌。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一嫌褪、第九天 我趴在偏房一處隱蔽的房頂上張望呀枢。 院中可真熱鬧,春花似錦笼痛、人聲如沸裙秋。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)摘刑。三九已至,卻和暖如春刻坊,著一層夾襖步出監(jiān)牢的瞬間枷恕,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工谭胚, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留徐块,地道東北人未玻。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像胡控,于是被迫代替她去往敵國(guó)和親扳剿。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • 【MySQL】Linux下MySQL 5.5敛劝、5.6和5.7的RPM、二進(jìn)制和源碼安裝 1.1BLOG文檔結(jié)構(gòu)圖 ...
    小麥苗DB寶閱讀 10,511評(píng)論 0 31
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理纷宇,服務(wù)發(fā)現(xiàn)夸盟,斷路器,智...
    卡卡羅2017閱讀 134,601評(píng)論 18 139
  • 更改ip和dnsVi /etc/sysconfig/network-scripts/ifcfg-eth0vi /...
    Xwei_閱讀 1,800評(píng)論 0 3
  • 一像捶、MemCache簡(jiǎn)介 session MemCache是一個(gè)自由上陕、源碼開(kāi)放、高性能拓春、分布式的分布式內(nèi)存對(duì)象緩存...
    李偉銘MIng閱讀 3,785評(píng)論 2 13
  • 對(duì)話即道路: 1释簿, “小李啊,你大學(xué)學(xué)的是計(jì)算機(jī)吧硼莽?” “是啊庶溶。” “那來(lái)幫我把這幾臺(tái)電腦搬到樓上去懂鸵∑荩” 2, “...
    馬唐閱讀 225評(píng)論 0 0