部署java項目到阿里雲服務器(centos7版本)


轉載請注明出處()  

一、搭建環境

1、搭建java環境(64位)

     一、准備壓縮包,rpm包或者tar包,將其上傳到阿里雲對應的文件夾(我用的工具是WinSCP,百度一下就有下載資源)

    二、若是rpm包,可以通過 rpm -ivh 包名  如 rpm -ivh jdk-8u101-linux-x64.rpm,來進行解壓,

           若是tar.gz形式,則可以通過tar -xzvf 包名,如 tar -xzvf jdk-8u151-linux-x64.tar.gz,

    三、配置環境變量

           打開環境配置文件,再在里面插入幾行代碼,如下     

1 vi /etc/profile   //打開配置文件命令
2 
3 
4 export JAVA_HOME=/usr/local/soft/jdk/jdk1.8   //jdk的路徑
5 
6 export PATH=$JAVA_HOME/bin:$PATH
7 
8 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

 

 

 

        再保存退出,運行命令  source /etc/profile ,使這個文件生效

  再在命令窗口。輸入 java -version,出現如下也沒,則成功,否則配置出錯。

2、tomcat的搭建

        一、下載tomcat包

     二、解壓包,如jdk一樣。

    三、啟動tocmcat,執行bin目錄下的startup.sh(注:若在bin目錄下啟動時tomcat,記得加./,否則會出現以下錯誤)

      

 

      四、啟動成功后,可以通過以下命令來查看啟動日志。    

1 tail -f logs/catalina.out -n 120   //-n為要顯示多少行數據   其中logs文件夾在tomcat文件下,和webapp目錄同級

 

           五、訪問tomcat,在centos中命令行界面,可以通過下面命令來訪問 tomcat   

1 curl http://127.0.0.1:8080

    若出現一大堆的html代碼,則表明訪問成功,

  六、在windows環境進行訪問

                不能訪問,則需要打開centos的防火牆配置,添加8080端口,命令如下    

1 firewall-cmd --zone=public --add-port=80/tcp --permanent
2  命令含義:
3 --zone #作用域
4 --add-port=80/tcp #添加端口,格式為:端口/通訊協議
5 --permanent #永久生效,沒有此參數重啟后失效

    再次訪問,即可成功。

 

 三、搭建mysql環境        

    一、下載 mysql的rpm包        

1 wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

 


      若出現wget: 未找到命令,則安裝wget, 命令 :yum -y install wget
    二、本地安裝rpm到linux系統
    yum localinstall mysql57-community-release-el7-8.noarch.rpm
    三、使用yum進行在線安裝,需要聯網
    yum install mysql-community-server
    若網速慢,則可以換一個yum源,如下(來源: http://blog.csdn.net/qq392039757/article/details/55511536)
    1、備份
      mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    2、下載新的CentOS-Base.repo 到/etc/yum.repos.d/
      CentOS 5
        wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
      CentOS 6
        wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
      CentOS 7
        wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
      3、之后運行yum makecache生成緩存
      若運行了出現/var/run/yum.pid 已被鎖定,PID 為 1241 的另一個程序正在運行。則可以rm -f /var/run/yum.pid。
    四、啟動mysql服務
    systemctl start mysqld,其中 start為啟動,restart為重啟,stop為停止。
    五、查看臨時密碼用來登錄
    grep 'temporary password' /var/log/mysqld.log

 

   六、修改密碼
      不然什么都用不了。修改密碼如下
      ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
      密碼有規則,若密碼不符合其規則,會報如下錯誤
      Your password does not satisfy the current policy requirements
      mysql5.7對密碼有要求,必須有大小寫字母,數字,特殊字符
      若不適應該規則,可以通過修改/etc/my.cnf文件來改變密碼規則,在[mysqld]下加入validate_password=off 
      再通過systemctl restart mysqld來重啟mysql來保存設置,這時也得注意,要設置密碼的的過期時間,直接運行命令
          ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
   七、改變編碼
      可加入
      [mysql]
      # 設置mysql客戶端默認字符集
      default-character-set=utf8
      [mysqld]
      character-set-server=utf8
      同時也要記得重啟mysql使之生效,systemctl restart mysqld,
   八、在使用遠程連接時,還要賦予權限
      命令如下
      GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_root_password' WITH GRANT OPTION;

        刷新權限:FLUSH   PRIVILEGES;
   九、在遠程時連接遇到

      

      

      此時應該要開放端口3306,命令如下
      firewall-cmd --zone=public --add-port=3306/tcp --permanent

二、部署項目

      方式一、

            直接將本地項目打成war包,再通過工具將war包放到tomcat的webapp下,啟動tomcat即可,

        方式二、

            在部署的項目的pom文件中加入以下代碼

        

 1 <build>
 2         <plugins>
 3             <plugin>
 4                 <groupId>org.apache.tomcat.maven</groupId>
 5                 <artifactId>tomcat7-maven-plugin</artifactId>
 6                 <configuration>
 7                     <port>8080</port>
 8                     <path>/</path>
 9                     <url>http://ip:8080/manager/text</url>//ip為阿里雲的公網ip
10                       //用戶名和密碼隨意填,但要和阿里雲上的用戶名和密碼配對
11                     <username>tomcat</username>
12                     <password>tomcat</password>
13                 </configuration>
14                 </plugin>
15         </plugins>
16     </build>                

      之后,在阿里雲上的tomcat文件夾下的conf/tomcat-users.xml 文件,通過vi命令打開,在<tomcat-users></tomcat-users>里添加如下內容

          其中用戶名和密碼的值和上面的用戶名密碼相對應

1 <role rolename="manager-gui" />
2 <role rolename="manager-script" />
3 <user username="tomcat" password="tomcat" roles="manager-gui, manager-script"/>

      使用elipse,執行其命令運行(一定得開放8080端口)

                            

    若在控制台看到如下消息,即成功

 

 三、tomcat啟動遇到的問題

      tomcat啟動超慢的問題。

        (以下內容轉載自:http://blog.csdn.net/qq276726581/article/details/53790926)

    A.使用偽隨機函數生成器
      /dev/unrandom /dev/urandom並不是真正的隨機行為(其實一般不容易重復),主要有兩個地方可以修改。
      通過修改 Tomcat 啟動文件 -Djava.security.egd=file:/dev/urandom
      通過修改 JRE 中的 java.security 文件 securerandom.source=file:/dev/urandom

    B.增大/dev/random的熵池(推薦)
      問題的原因是由於熵池不夠大,所以增大它是最徹底的方法。我們可以通過軟件的方法實現,下面是軟件的安裝和配置流程。
      安裝熵服務
      yum install rng-tools
      啟動熵服務
      systemctl start rngd
      如果你的 CPU 不支持 DRNG 特性或者像我一樣使用虛擬機,可以使用/dev/unrandom來模擬。
      cp /usr/lib/systemd/system/rngd.service /etc/systemd/system
      vim /etc/systemd/system/rngd.service
      #以下是編輯內容
      ExecStart=/sbin/rngd -f -r /dev/urandom

      重新載入服務
      systemctl daemon-reload
       systemctl restart rngd
     經過上面的修改,我們再觀察 cat /proc/sys/kernel/random/entropy_avail 基本上在 3000 左右。這個時候重新啟動 Tomcat,發現啟動時間正常

 


    以上就是部署項目的過程,若有不足之處,望指正

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM