Linux(二)服務(wù)器運(yùn)行環(huán)境配置

logo

前言

Linux相信對(duì)大多數(shù)程序員來說都不陌生骇径,畢竟在服務(wù)器端依然還是霸主地位而且絲毫沒有退居二線的意思,以至于現(xiàn)在幾乎每一個(gè)軟件開發(fā)的相關(guān)人員都得或多或少的知道一些Linux的相關(guān)內(nèi)容滩援,本文將介紹如何在剛拿到一臺(tái)云服務(wù)器(采用centos)來進(jìn)行運(yùn)行環(huán)境的搭建,包括JDK塔嬉、Mysql玩徊、Tomcat以及nginx。相信對(duì)于小白來說很有必要的谨究,也是我個(gè)人的一個(gè)記錄佣赖。

該服務(wù)器的用途是用于部署JavaEE項(xiàng)目。
部署之后的效果圖如下:


1

JDK安裝

由于我們之后需要部署的是JavaEE項(xiàng)目记盒,所以首先第一步就是安裝JDK了憎蛤。

卸載自帶的openJDK

現(xiàn)在的服務(wù)器拿來之后一般都是默認(rèn)給我們安裝一個(gè)openJDK,首先我們需要卸載掉纪吮。

  1. 使用rpm -qa | grep java命令查看系統(tǒng)中是否存在有Java俩檬。
  2. 使用rpm -e --nodeps 相關(guān)應(yīng)用名稱來進(jìn)行卸載。(相關(guān)應(yīng)用名稱就是上一個(gè)命令中顯示出來的名稱復(fù)制到這里卸載即可)碾盟。

下載并安裝JDK

  1. 之后是下載ORACLE所提供的JDK棚辽,傳送門根據(jù)自己系統(tǒng)的情況下載對(duì)應(yīng)版本即可。筆者使用的是jdk-8u101-linux-x64.rpm版本冰肴。
  2. 然后使用FTP工具上傳到/usr/java目錄下即可屈藐,沒有java目錄新建一個(gè)即可。
  3. 然后使用rpm -ivh jdk-8u101-linux-x64.rpm命令進(jìn)行解壓安裝熙尉。

profile文件配置

安裝完成之后使用vi /etc/profile命令編輯profile文件(注意該文件路徑是指根目錄下的etc文件夾不要找錯(cuò)了)联逻。
在該文件中加入以下內(nèi)容:

export JAVA_HOME=/usr/java/jdk-8u101-linux-x64
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

保存之后運(yùn)行source /etc/profile使配置生效。

驗(yàn)證是否安裝成功

之后我們使用在windows平臺(tái)也有的命令java -version检痰,如果輸出如圖:

2

表示安裝成功包归。

MySQL安裝

卸載自帶的Mysql

首先第一步還是要卸載掉自帶的mysql。
rpm -e --nodeps mysql命令和之前一樣只是把應(yīng)用名稱換成mysql了而已铅歼。

使用yum來安裝mysql

之后我們采用yum來安裝mysql公壤。這樣的方式最簡(jiǎn)單便捷。
yum install -y mysql-server mysql mysql-deve執(zhí)行該命令直到出現(xiàn)Complete!提示之后表示安裝成功椎椰。
rpm -qi mysql-server之后使用該命令可以查看我們安裝的mysql信息厦幅。

mysql相關(guān)配置

使用service mysqld start來啟動(dòng)mysql服務(wù)(第一次會(huì)輸出很多信息),之后就不會(huì)了慨飘。
然后我們可以使用chkconfig mysqld on命令將mysql設(shè)置為開機(jī)啟動(dòng)确憨。
輸入chkconfig --list | grep mysql命令顯示如下圖:

3

表示設(shè)置成功。
使用mysqladmin -u root password 'root'root賬戶設(shè)置密碼。

設(shè)置遠(yuǎn)程使用

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
# root是用戶名缚态,%代表任意主機(jī)磁椒,'123456'指定的登錄密碼(這個(gè)和本地的root密碼可以設(shè)置不同的,互不影響)
flush privileges; # 重載系統(tǒng)權(quán)限
exit;

驗(yàn)證使用

使用mysql -u root -proot來登錄mysql玫芦。如果出現(xiàn)以下界面表示設(shè)置成功浆熔。

4

Tomcat安裝

Tomcat也是我們運(yùn)行JavaEE項(xiàng)目必備的一個(gè)中間件。

  1. 第一步需要下載linux的Tomcat桥帆,傳送門医增。根據(jù)自己系統(tǒng)版本進(jìn)行下載即可。之后將apache-tomcat-8.5.5.tar.gz上傳到/usr/local目錄中老虫。
  2. 解壓該壓縮包tar -zxv -f apache-tomcat-8.5.5.tar.gz,再使用mv apache-tomcat-8.5.5 tomcat將解壓的Tomcat移動(dòng)到外層的Tomcat目錄中叶骨。
  3. 進(jìn)入/usr/local/tomcat/apache-tomcat-8.5.5/bin目錄使用./startup.bat命令啟動(dòng)tomcat。
  4. 因?yàn)閠omcat使用的默認(rèn)端口是8080祈匙,linux防火墻默認(rèn)是不能訪問的忽刽,需要手動(dòng)將其打開。使用vi + /etc/sysconfig/iptables編輯iptables(注意etc目錄是根目錄下的)夺欲,加入以下代碼:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

這里我們開放了8080和80端口跪帝,之后安裝nginx就不用在開放了。

ps:這里用到了簡(jiǎn)單的vim命令些阅。按i進(jìn)入插入模式伞剑,輸入上面兩段代碼。之后按esc退出插入模式市埋。再按:wq保存關(guān)閉即可黎泣。
之后使用service iptables restart命令重啟防火墻即可。在瀏覽器輸入服務(wù)器的ip+8080如果出現(xiàn)Tomcat的歡迎頁(yè)即表明Tomcat安裝成功缤谎。

nginx安裝

最后是安裝nginx抒倚,這里我們還是使用最簡(jiǎn)單的yum的方式來進(jìn)行安裝。

  • 首先使用以下幾個(gè)命令安裝必備的幾個(gè)庫(kù):
yum -y install pcre*
yum -y install openssl*
yum -y install gcc
  • 之后安裝nginx弓千。
 cd /usr/local/
 wget http://nginx.org/download/nginx-1.4.2.tar.gz
 tar -zxvf nginx-1.4.2.tar.gz
 cd nginx-1.4.2  
 ./configure --prefix=/usr/local/nginx --with-http_stub_status_module
 make
 make install
  • 之后就可以使用/usr/local/nginx/sbin/nginx命令來啟動(dòng)nginx了衡便。輸入服務(wù)器的IP地址献起,如果出現(xiàn)nginx的歡迎界面表示安裝成功了洋访。

nginx配置

這里我就簡(jiǎn)單貼以下我的配置,主要就是配置一個(gè)upstream,之后在server中引用配置的那個(gè)upstream即可谴餐。


#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    upstream crossover_main {
        server 127.0.0.1:8080;
    }

    server {
        listen       80;
        server_name  www.crossoverjie.top;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location  / {
             proxy_pass http://crossover_main/examples/;
             proxy_set_header Host $http_host;
             proxy_set_header X-Forwarded-For $remote_addr;
             index  index.jsp;
        }


        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443;
    #    server_name  localhost;

    #    ssl                  on;
    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_timeout  5m;

    #    ssl_protocols  SSLv2 SSLv3 TLSv1;
    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers   on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}

之后我們?cè)诘刂窓谳斎敕?wù)器的IP地址(如果有域名解析了服務(wù)器的IP可以直接輸入域名)就會(huì)進(jìn)入我們?cè)?code>upstream中配置的地址加上在server中的地址姻政。根據(jù)我這里的配置最后解析地址就是http://127.0.0.1:8080/examples應(yīng)該是很好理解的。最終的結(jié)果是我在片頭放的那張截圖一樣岂嗓。

總結(jié)

這是一個(gè)簡(jiǎn)單的基于centOS的運(yùn)行環(huán)境配置汁展,對(duì)于小白練手應(yīng)該是夠了,有不清楚和錯(cuò)誤的地方歡迎指出反正我也不會(huì)回復(fù)。


4

個(gè)人博客地址:http://crossoverjie.top食绿。
GitHub地址:https://github.com/crossoverJie侈咕。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市器紧,隨后出現(xiàn)的幾起案子耀销,更是在濱河造成了極大的恐慌,老刑警劉巖铲汪,帶你破解...
    沈念sama閱讀 211,561評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件熊尉,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡掌腰,警方通過查閱死者的電腦和手機(jī)狰住,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來齿梁,“玉大人催植,你說我怎么就攤上這事∩自瘢” “怎么了查邢?”我有些...
    開封第一講書人閱讀 157,162評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)酵幕。 經(jīng)常有香客問我扰藕,道長(zhǎng),這世上最難降的妖魔是什么芳撒? 我笑而不...
    開封第一講書人閱讀 56,470評(píng)論 1 283
  • 正文 為了忘掉前任邓深,我火速辦了婚禮,結(jié)果婚禮上笔刹,老公的妹妹穿的比我還像新娘芥备。我一直安慰自己,他們只是感情好舌菜,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,550評(píng)論 6 385
  • 文/花漫 我一把揭開白布萌壳。 她就那樣靜靜地躺著,像睡著了一般日月。 火紅的嫁衣襯著肌膚如雪袱瓮。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,806評(píng)論 1 290
  • 那天爱咬,我揣著相機(jī)與錄音尺借,去河邊找鬼。 笑死精拟,一個(gè)胖子當(dāng)著我的面吹牛燎斩,可吹牛的內(nèi)容都是我干的虱歪。 我是一名探鬼主播,決...
    沈念sama閱讀 38,951評(píng)論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼栅表,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼笋鄙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起怪瓶,我...
    開封第一講書人閱讀 37,712評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤局装,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后劳殖,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體铐尚,經(jīng)...
    沈念sama閱讀 44,166評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,510評(píng)論 2 327
  • 正文 我和宋清朗相戀三年哆姻,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了宣增。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,643評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡矛缨,死狀恐怖爹脾,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情箕昭,我是刑警寧澤灵妨,帶...
    沈念sama閱讀 34,306評(píng)論 4 330
  • 正文 年R本政府宣布,位于F島的核電站落竹,受9級(jí)特大地震影響泌霍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜述召,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,930評(píng)論 3 313
  • 文/蒙蒙 一朱转、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧积暖,春花似錦藤为、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至遍愿,卻和暖如春存淫,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工评雌, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,351評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像拖吼,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,509評(píng)論 2 348

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