VUE前端項目部署、發佈

準備工作

已經寫好的代碼,有團隊的需要拉取最新的代碼(今天重點分享團隊前端項目的發佈過程)

軟件:(包括但不限於)——如果工具都OK,將大大降低發佈難度

Nginx:輕量級web服務器

Jenkins:持續集成開發工具

Tomcat:輕量級的應用服務器

Xshell:安全終端模擬軟件

VSCode:前端開發工具

當然還有Maven、Gitlib、JDK,這些都是團隊開發的必備工具

 

基礎知識:

敏捷開發(Agile Development) 的核心是迭代開發(Iterative Development) 與 增量開發 (Incremental Development) 。這裏具體什麼是迭代開發,什麼是增量開發我就不詳細說了,但是這裏說一點,雖然敏捷開發將軟件開發分成多個迭代,但是也要求,每次迭代都是一個完整的軟件開發週期,必須按 照軟件工程的方法論,進行正規的流程管理。

 

什麼是持續集成

持續集成( Continuous integration , 簡稱 CI )指的是,頻繁地(一天多次)將代碼集成到主幹。

持續集成的目的,就是讓產品可以快速迭代,同時還能保持高質量。它的核心措施是,代碼集成到主幹 之前,必須通過自動化測試。只要有一個測試用例失敗,就不能集成。

通過持續集成, 團隊可以快速的從一個功能到另一個功能,簡而言之,敏捷軟件開發很大一部分都要歸 功於持續集成。

 

根據持續集成的設計,代碼從提交到生產,整個過程有以下幾步。

 

提交

流程的第一步,是開發者向代碼倉庫提交代碼。所有後面的步驟都始於本地代碼的一次提交 (commit)。  

測試(第一輪)

代碼倉庫對commit操作配置了鉤子(hook),只要提交代碼或者合併進主幹,就會跑自動化測試。

 

構建

通過第一輪測試,代碼就可以合併進主幹,就算可以交付了。

交付後,就先進行構建(build),再進入第二輪測試。所謂構建,指的是將源碼轉換爲可以運行的實 際代碼,比如安裝依賴,配置各種資源(樣式表、JS腳本、圖片)等等。  

測試(第二輪)

構建完成,就要進行第二輪測試。如果第一輪已經涵蓋了所有測試內容,第二輪可以省略,當然,這時 構建步驟也要移到第一輪測試前面。

 

部署

過了第二輪測試,當前代碼就是一個可以直接部署的版本(artifact)。將這個版本的所有文件打包( tar filename.tar * )存檔,發到生產服務器。

 

回滾

一旦當前版本發生問題,就要回滾到上一個版本的構建結果。簡單的做法就是修改一下符號鏈接,指 向上一個版本的目錄。

 

持續集成流程(看完這個圖你會明白點什麼)

項目本地Tomcat打包發佈

發佈前先進行了本地發佈的原因:在於這樣可以檢驗自己項目打包後是否存在問題,如果在本地能夠發佈成功,那麼在遠程服務器上發佈也一定沒有什麼問題。

第一步:用前端開發工具打包(我是vscode

npm run bulid

第二步:啓動Tomcat

1.啓動tomcat,直接雙擊startup就可以

2.將打包好的應用程序放在tomcat的webapps目錄下

3.啓動tomcat,進入Tomcat Web應用程序管理者,就可以看到放到tomcat目錄下打包好的程序

4.在Tomcat Web應用程序管理者頁面直接點擊剛剛的那個程序,如果頁面加載出來,說明程序打包沒有問題

5.將自己的IP地址加上,這樣其他人就可以訪問到該程序了

點擊項目名稱:/itoo-front-dev彈出下面的頁面,代表本地發佈成功

小結:通過上面將打包好的代碼部署到Tomcat本地服務器上的過程,可以很好的理解將代碼打包到遠程服務器,其實他們都是一個用途,就是將打包好的程序發佈到服務器讓其他用戶都可以訪問到

 

遠程發佈

第一步:用Jenkins軟件對項目進行部署——打包、部署(這個相當於Tomcat本地部署中的打包和部署)

1)登錄Jenkins,創建新任務

 2)輸入任務名稱,選擇自由風格軟件項目

3)項目配置

 4)添加構建命令:先下載依賴:npm install,打包:npm run build

 5)將打包好的程序部署到對應的服務器

第二步:啓動Xshell,並且連接到需要部署的服務器上去

1)Xshell連接服務器

2)選擇要部署的服務器

第三步:在Linux上下載安裝Nginx

可以參考相關教程:https://www.runoob.com/linux/nginx-install-setup.html

第1步:下載Nginx,

下載地址:wget http://nginx.org/download/nginx-1.9.9.tar.gz

第2步:下載到服務器中的指定位置

 

[admin@itoo4 src]$ tar -zxvf nginx-1.9.9.tar.gz

第4步:進入到安裝目錄

[admin@itoo4 src]$ cd nginx-1.9.9

第5步:編譯安裝

[admin@itoo4 nginx-1.9.9]$ ./configure

[admin@itoo4 nginx-1.9.9]$ make

[admin@itoo4 nginx-1.9.9]$ make install

第6步:查看版本

[admin@itoo4 nginx-1.9.9]$ nginx -v

 

第四步:修改Nginx的配置文件

配置文件詳解:https://blog.csdn.net/weixin_42167759/article/details/85049546

[root@bogon conf]#  cat /usr/local/webserver/nginx/conf/nginx.conf
user root;
worker_processes 2; #設置值和CPU核心數一致
error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; #日誌位置和日誌級別
pid /usr/local/webserver/nginx/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 65535;
events
{
  use epoll;
  worker_connections 65535;
}
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';
  
#charset gb2312;
  #limit_zone crawler $binary_remote_addr 10m;
 #下面是server虛擬主機的配置
 server
  {
    listen 80;#監聽端口
    server_name localhost;#域名
    index index.html index.htm index.php;
    root /usr/local/webserver/nginx/html;#站點目錄
      location ~ .*\.(php|php5)?$
    {
      #fastcgi_pass unix:/tmp/php-cgi.sock;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      include fastcgi.conf;
    }
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$
    {
      expires 30d;
  # access_log off;
    }
    location ~ .*\.(js|css)?$
    {
      expires 15d;
   # access_log off;
    }
    access_log off;
  }
}

第五步:可能需要檢查你是否有安裝vim

查看是否安裝:rpm -qa|grep vim

安裝vim:yum -y install vim-enhanced

第六步:Jenkins構建

第七步:重啓Nginx

驗證nginx配置文件是否正確

方法一:進入nginx安裝目錄sbin下,輸入命令./nginx -t

看到如下顯示nginx.conf syntax is ok

nginx.conf test is successful 說明配置文件正確!

方法二:在啓動命令-c前加-t

 

重啓Nginx服務

方法一:進入nginx可執行目錄sbin下,輸入命令./nginx -s reload 即可

方法二:查找當前nginx進程號,然後輸入命令:kill -HUP 進程號 實現重啓nginx服務

 

其他命令:

/usr/local/nginx/sbin/nginx -s reload            # 重新載入配置文件
/usr/local/nginx/sbin/nginx -s reopen            # 重啓 Nginx
/usr/local/nginx/sbin/nginx -s stop              # 停止 Nginx

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章