溫馨提示×

centos中flutter部署流程是什么

小樊
50
2025-09-20 05:25:33
欄目: 智能運維

CentOS中Flutter部署流程(以Web應用為例)

1. 系統準備

  • 更新系統:運行sudo yum update && sudo yum upgrade,確保系統包為最新版本。
  • 安裝基礎依賴:執行sudo yum groupinstall "Development Tools"安裝編譯工具鏈;sudo yum install python3-pip安裝Python包管理工具。

2. 安裝Flutter SDK

  • 下載SDK:從Flutter官網或國內鏡像(如storage.flutter-io.cn)下載最新穩定版Linux SDK(如flutter_linux_3.19.6-stable.tar.xz)。
  • 解壓文件:將下載的壓縮包解壓至指定目錄(如~/flutter),命令:tar xf flutter_linux_*.tar.xz -C ~/flutter。
  • 配置環境變量:編輯~/.bash_profile(或~/.bashrc),添加export PATH="$PATH:~/flutter/bin";運行source ~/.bash_profile使配置生效。

3. 驗證Flutter環境

  • 運行flutter doctor,檢查系統依賴是否滿足(如Android工具鏈、iOS工具鏈等)。若有缺失項,根據提示安裝對應依賴(如Android Studio、Xcode等)。

4. 安裝并配置Web服務器(以Nginx為例)

  • 安裝Nginx:運行sudo yum install nginx,完成Nginx安裝。
  • 配置Nginx:創建Web應用配置文件/etc/nginx/conf.d/flutter_app.conf,內容如下(替換your_domain_or_IP為實際域名/IP,/path/to/flutter/build/web為Flutter構建文件路徑):
    server {
        listen 80;
        server_name your_domain_or_IP;
        location / {
            proxy_pass http://localhost:8080;  # 轉發至Flutter應用端口
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
    
  • 啟動Nginx:運行sudo systemctl start nginx啟動服務,sudo systemctl enable nginx設置開機自啟。

5. 構建與部署Flutter Web應用

  • 構建Web版本:進入Flutter項目目錄,運行flutter build web,生成靜態文件至build/web目錄。
  • 復制文件到服務器:將build/web下的所有文件復制到Nginx默認靜態目錄(如/usr/share/nginx/html),命令:cp -r build/web/* /usr/share/nginx/html/。

6. (可選)配置Systemd服務(后臺運行)

  • 創建服務文件:運行sudo vi /etc/systemd/system/flutter_app.service,添加以下內容(替換/path/to/flutter/app為項目路徑,8080為應用端口):
    [Unit]
    Description=Flutter Web App
    After=network.target
    
    [Service]
    User=your_username
    WorkingDirectory=/path/to/flutter/app
    ExecStart=/path/to/flutter/app/build/web/webserver --port 8080  # 若使用webserver,否則省略此行
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    
  • 啟動服務:運行sudo systemctl start flutter_app啟動服務,sudo systemctl enable flutter_app設置開機自啟。

7. 驗證部署

  • 在瀏覽器中訪問服務器IP或域名,若看到Flutter應用頁面,則部署成功。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女