Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Instalasi Finch untuk digunakan dengan AWS SAM CLI
Finch AWS adalah alat pengembangan kontainer yang menyediakan alternatifDocker, terutama bermanfaat pada sistem macOS dan Linux. Untuk informasi lebih lanjut, lihat Finch di GitHub
catatan
Anda perlu Finch menguji aplikasi Anda secara lokal, untuk membangun paket penerapan menggunakan --use-container opsi, dan membangun fungsi gambar OCI. Dimulai dengan AWS SAM CLI versi 1.145.0, AWS SAM CLI Finch mendukung sebagai runtime kontainer alternatif untuk. Docker
Topik
Menginstal Finch
Ikuti petunjuk ini untuk menginstal Finch pada sistem operasi Anda.
Prasyarat
catatan
Finchintegrasi dalam AWS SAM CLI tersedia di sistem macOS dan Linux. Untuk pengguna Windows, pertimbangkan untuk menggunakan mesin virtual atau lingkungan Linux untuk Finch fungsionalitas.
Versi macOS:
macOS 15 Sequoia
macOS 14 Sonoma
catatan
Finchmendukung dua versi terbaru macOS.
Linux:
Kernel Linux v4.x +
Instalasi Finch
Untuk menginstal Finch di macOS
-
Instal Finch menggunakan
brewCLI. Jika diminta, masukkan kata sandi macOS Anda.$brew install finch -
Periksa Finch versi yang diinstal.
$finch --version -
Inisialisasi mesin Finch virtual (pengaturan pertama kali).
$finch vm init -
Mulai mesin Finch virtual.
$finch vm start -
Periksa status mesin Finch virtual.
$finch vm status -
Verifikasi yang Finch berjalan dengan benar.
$finch --info$finch ps
Untuk informasi selengkapnya, lihat Menginstal Finch di macOS
Anda dapat menginstal Finch di Amazon Linux, Ubuntu, atau dengan menggunakan metode instalasi generik. Untuk informasi selengkapnya, lihat Menginstal Finch di Linux
Mengkonfigurasi Finch dengan CLI AWS SAM
Setelah Anda menginstalFinch, AWS SAM CLI secara otomatis mendeteksi dan menggunakan Finch sebagai runtime kontainer saat Docker tidak berjalan.
catatan
Finchberfungsi sebagai fallback ke. Docker Jika Anda memiliki keduanya Docker dan Finch menginstal dan menjalankan, AWS SAM CLI memprioritaskan secara defaultDocker.
Konfigurasi preferensi administrator (macOS)
Anda dapat mengonfigurasi AWS SAM CLI untuk menggunakan runtime kontainer tertentu sebagai default dengan membuat file preferensi administrator. Preferensi seluruh sistem ini mengesampingkan perilaku fallback default.
Opsi konfigurasi yang tersedia
-
Tetapkan Finch sebagai runtime kontainer pilihan:
$sudo /usr/libexec/PlistBuddy -c "Add :DefaultContainerRuntime string finch" /Library/Preferences/com.amazon.samcli.plist -
Tetapkan Docker sebagai runtime kontainer pilihan:
$sudo /usr/libexec/PlistBuddy -c "Add :DefaultContainerRuntime string docker" /Library/Preferences/com.amazon.samcli.plist -
Hapus preferensi (kembali ke perilaku default):
$sudo /usr/libexec/PlistBuddy -c "Remove :DefaultContainerRuntime" /Library/Preferences/com.amazon.samcli.plist
catatan
Ketika tidak ada preferensi administrator yang disetel, AWS SAM CLI menggunakan secara Docker default bila tersedia, dengan Finch sebagai fallback saat Docker tidak berjalan.
Perbedaan pemasangan direktori (macOS)
Di macOS, perintah AWS SAM lokal gagal jika Anda menemukan project di luar home directory (~) atau. /Volumes Desain ini membatasi pemasangan direktori otomatis untuk alasan keamanan tanpa sepengetahuan Anda.
Opsi mitigasi
-
Opsi 1: Buka konfigurasi Finch di editor teks
~/.finch/finch.yamldan tambahkan jalur proyek Anda di bawahadditional_directoriesbagian, lalu restart mesin Finch virtual. Untuk informasi tambahan, lihat dokumentasi Finch. $finch vm stop$finch vm start -
Opsi 2: Pindahkan proyek Anda ke direktori home Anda.
Memverifikasi instalasi
Setelah Anda menginstal dan memulaiFinch, verifikasi bahwa itu berfungsi dengan AWS SAM CLI.
Verifikasi dasar
Jalankan perintah berikut untuk memverifikasi bahwa AWS SAM CLI dapat menggunakan: Finch
$sam build --use-container
Anda akan melihat AWS SAM CLI menggunakan Finch untuk membangun aplikasi Anda di lingkungan kontainer.
catatan
Finchberfungsi sebagai fallback ke. Docker Jika Docker sedang berjalan, AWS SAM CLI akan memprioritaskan secara defaultDocker.
Pengujian Finch sebagai fallback
Untuk menguji Finch sebagai fallback saat Docker sedang berjalan, Anda harus berhenti Docker terlebih dahulu.
Untuk menguji fungsionalitas Finch fallback
-
Berhenti Docker menggunakan perintah yang sesuai untuk sistem operasi Anda.
macOS:
$docker stop $(docker ps -q)$pkill -f "Docker Desktop"DockerVerifikasi dihentikan.
$docker psLinux:
$docker stop $(docker ps -q)$sudo systemctl stop dockerDockerVerifikasi dihentikan.
$sudo systemctl status docker -
Jalankan
sam build --use-containerperintah untuk memverifikasi AWS SAM CLI secara otomatis menggunakan Finch sebagai fallback.
Menghentikan Finch
Jika Anda perlu berhentiFinch, gunakan perintah berikut:
macOS:
$finch vm stop$sudo pkill -f finch
FinchVerifikasi dihentikan.
$finch vm status
Linux:
$sudo systemctl stop finch$sudo pkill -f finch
FinchVerifikasi dihentikan.
$sudo systemctl status finch
Pemecahan masalah
Jika Anda mengalami masalah denganFinch:
Verifikasi bahwa sistem operasi Anda memenuhi prasyarat.
Verifikasi bahwa Anda telah mengaktifkan virtualisasi pada sistem Anda.
Untuk macOS, verifikasi bahwa Anda memiliki ruang disk yang cukup untuk mesin virtual.
Untuk Linux, verifikasi bahwa Anda memiliki izin yang tepat untuk menjalankan
systemctlperintah.Jika Anda mengalami kegagalan CloudFormation penerapan dengan kesalahan “tipe media tidak didukung” saat Anda mendorong gambar multi-arsitektur ke Amazon Elastic Container Registry (Amazon ECR), buat artefak gambar tunggal alih-alih menggunakan gambar multi-arsitektur. Ini terjadi karena Finch mendorong indeks gambar dan gambar ke Amazon ECR, sementara hanya Docker mendorong gambar.
Jika pembuatan lintas platform gagal saat arsitektur fungsi target tidak cocok dengan arsitektur mesin host di Linux, aktifkan emulasi lintas platform dengan menjalankan.
sudo finch run --privileged --rm tonistiigi/binfmt:master --install all
Untuk pemecahan masalah tambahan, lihat dokumentasi Finch
Langkah selanjutnya
Sekarang setelah Anda Finch menginstal, Anda dapat menggunakannya dengan AWS SAM CLI untuk:
Bangun aplikasi tanpa server menggunakan wadah dengan.
sam build --use-containerUntuk informasi selengkapnya, lihat sam build.Uji fungsi Lambda secara lokal dengan.
sam local invokeUntuk informasi selengkapnya, lihat sam local invoke.Mulai API Gateway lokal dengan
sam local start-api. Untuk informasi selengkapnya, lihat sam local start-api.Mulai titik akhir Lambda lokal dengan.
sam local start-lambdaUntuk informasi selengkapnya, lihat sam local start-lambda.
Untuk informasi selengkapnya tentang penggunaan AWS SAM CLI dengan kontainer, lihat. Membangun default dengan AWS SAM