Sebelum menggunakan paket kode untuk menerapkan aplikasi, Anda perlu membuat paket kode yang sesuai dengan persyaratan SAE.
Java
Membuat paket JAR atau WAR untuk aplikasi SAE sama seperti membuat pengemasan kode biasa.
PHP
Unduh contoh paket kode hello-sae-php.zip dan ekstrak. Struktur direktori adalah sebagai berikut:
. ├── nginx │ ├── default.conf │ ├── fastcgi_params │ └── root.dir ├── php # Direktori program │ ├── index.php # File entri program │ └── phpinfo.phpGanti file kode di direktori
php/dengan milik Anda.Ubah file konfigurasi di direktori
nginx/sesuai kebutuhan.Item konfigurasi
Nilai default
Cara mengubah
Port
80
Ubah file
default.conf, tambahkanlisten <port>;(contohnya,listen 8080;) di baris pertama dariserver{ }.Nama file entri program
index.php
Jika Anda mengubah nama file entri program, lakukan langkah-langkah berikut:
Di
default.conf, ubahindex index.php index.html index.htm;menjadiindex <Nama file entri program>;, dan ubahfastcgi_index index.php;menjadifastcgi_index <nama file entri program>;.Nama direktori program
php
Jika Anda mengubah nama direktori program, lakukan langkah-langkah berikut:
Di
root.dir, ubahroot /home/admin/app/php;menjadiroot /home/admin/app/<nama direktori program>;Kemas isi direktori saat ini ke dalam file ZIP. Pastikan bahwa direktori
nginxdanphpberada di jalur root file ZIP.
Python
Pelajari spesifikasi pengemasan ZIP.
Kemas file atau folder dari direktori akar kode. Jangan kemas direktori luar.
Jika aplikasi memiliki file requirements.txt, letakkan di direktori root dan kemas bersama untuk memungkinkan SAE menginstal dependensi perangkat lunak secara otomatis selama penyebaran.
Berdasarkan contoh hello-sae-python.zip, kemas aplikasi Python Anda sebagai file ZIP. Struktur direktori contoh adalah sebagai berikut (kode sampel bergantung pada Flask, Gunicorn, dan paket lainnya. Untuk detailnya, lihat requirements.txt):
. ├── app │ └── hello.py └── requirements.txt (opsional, harus berada di direktori root)Eksekusi perintah berikut:
# Dapatkan contoh wget https://sae-demo-cn-shenzhen.oss-cn-shenzhen.aliyuncs.com/demo/1.0/hello-sae-python.zip # Ekstrak contoh unzip hello-sae-python.zip -d hello-sae-python && rm -rf hello-sae-python.zip && cd hello-sae-python # Ganti kode sampel dengan program Python Anda (ganti /path/to/your-python-project/ dengan jalur proyek Anda) rm -rf app/* requirements.txt cp -r /path/to/your-python-project/. app/ cp -r /path/to/your-python-project/requirements.txt ./ # Kemas menjadi file ZIP zip -r my-python-app.zip app requirements.txt
.NET Core
Pahami spesifikasi pengemasan ZIP.
Direktori ZIP
Direktori waktu proses instance SAE yang sesuai
Deskripsi
./start.sh
/home/admin/start.sh
Menyimpan skrip startup aplikasi.
./your-dotnet-project
/home/admin/app/nginx/*.conf
Menyimpan program .NET.
Kemas file atau folder dari direktori akar kode. Jangan kemas direktori luar.
Jika aplikasi memiliki skrip startup, seperti file
start.sh, letakkan di direktori root dan kemas bersama untuk memungkinkan SAE mengeksekusi skrip startup secara otomatis selama penyebaran.
Unduh dan instal SDK .NET. Pilih versi .NET Core yang didukung oleh SAE dan verifikasi instalasi dengan menjalankan
dotnet --version. Jika terjadi kesalahan, instal paket dependensi yang sesuai berdasarkan pesan kesalahan.Kompilasi dan bangun proyek dengan menjalankan perintah berikut:
# Navigasi ke jalur proyek (ganti /path/to/your-dotnet-project/ dengan jalur proyek Anda) cd /path/to/your-dotnet-project/ # Pulihkan dependensi proyek dotnet restore # Kompilasi kode sumber dotnet build -c Release -o demo # -c Release: Mengoptimalkan kode untuk meningkatkan performa waktu proses dan menghapus informasi debugging, cocok untuk penyebaran produksi. # -o demo: Menentukan direktori output pembuatan sebagai demo.Tulis skrip startup untuk proyek (seperti
start.sh) dan tambahkan izin eksekusi ke dalamnya menggunakanchmod +x ./start.sh.Lihat struktur direktori saat ini menggunakan perintah tree.
. ├── appsettings.Development.json ├── appsettings.json ├── appsettings.Production.json ├── your-dotnet-project ... └── start.shKemas menjadi file ZIP.
zip -r demo.zip * # demo.zip: Nama file ZIP yang akan dibuat. # *: Mengemas semua file dan folder di direktori saat ini.