CentOS中Flutter部署流程(以Web應用為例)
sudo yum update && sudo yum upgrade,確保系統包為最新版本。sudo yum groupinstall "Development Tools"安裝編譯工具鏈;sudo yum install python3-pip安裝Python包管理工具。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使配置生效。flutter doctor,檢查系統依賴是否滿足(如Android工具鏈、iOS工具鏈等)。若有缺失項,根據提示安裝對應依賴(如Android Studio、Xcode等)。sudo yum install nginx,完成Nginx安裝。/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;
}
}
sudo systemctl start nginx啟動服務,sudo systemctl enable nginx設置開機自啟。flutter build web,生成靜態文件至build/web目錄。build/web下的所有文件復制到Nginx默認靜態目錄(如/usr/share/nginx/html),命令:cp -r build/web/* /usr/share/nginx/html/。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設置開機自啟。