Menyebarkan ke Heroku: Pengenalan â € 'SITEPOINT
sorotan utama:
- Heroku memudahkan penggunaan aplikasi web dengan platform pelayan yang diuruskan. Ia mengautomasikan peruntukan sumber pelayan dan membolehkan penggunaan mudah melalui
- . Tingkat percuma disediakan untuk aplikasi trafik rendah.
git push
Heroku menggunakan binaan -struktur untuk pengurusan ketergantungan, bangunan, dan menjalankan projek anda -untuk menguruskan projek. Ia menyokong pelbagai bahasa dan secara automatik dapat mengesan jenis projek. Binaan pihak ketiga mengendalikan bahasa yang tidak disokong atau membina alat. - menentukan apa yang Heroku dijalankan. Selepas mengkonfigurasi
Procfile
dan menambahkannya ke repositori, penempatan dicapai dengan menggunakanProcfile
. Perintah tambahan menguruskan konfigurasi berterusan, proses skala, dan mengendalikan rollback.git push
Terima kasih kepada Matthew Wilkin atas sumbangan kajian rakan sebaya yang berharga.
Panduan ini menerangkan Heroku dan proses penempatan aplikasi webnya.
Heroku adalah platform yang diurus untuk penggunaan aplikasi Web Rapid. Ia secara automatik menyediakan sumber pelayan, memudahkan penggunaan ke operasi
git push
Walaupun kos efektif berbanding dengan pasukan DevOps yang berdedikasi, aplikasi trafik tinggi boleh menanggung kos yang signifikan (setiap dyno berharga $ 25 setiap bulan, dengan penambahan pangkalan data yang semakin meningkat).
Sebelum anda memulakan:
untuk mengikuti panduan ini, pastikan anda mempunyai:
toolbelt heroku (utiliti baris perintah).
- Git dipasang dan dikonfigurasi. (Kebiasaan dengan Git disyorkan.)
- Jika anda mempunyai projek siap sedia, langkau bahagian seterusnya dan teruskan untuk "membuat projek Heroku."
Projek Contoh:
Contoh ini menggunakan aplikasi Flask Python. Anda boleh menyesuaikan proses untuk projek lain. Sekiranya anda mempunyai projek anda sendiri, langkau bahagian ini.
Buat direktori projek (mis.,):
myproject
mengisi fail seperti berikut:
<code>/myproject /templates index.html app.py requirements.txt</code>
:
app.py
import os import flask app = flask.Flask(__name__) @app.route("/") def index(): return flask.render_template("index.html") if __name__ == "__main__": app.run(port=os.environ.get('PORT', '5000'))
templates/index.html
<!DOCTYPE html> <html> <head> <title>My example project</title> </head> <body> <h1 id="This-is-my-project">This is my project.</h1> </body> </html>
requirements.txt
Pasang kebergantungan:
<code>Flask==0.10.1</code>
Sahkan fungsi dengan menjalankan
dan mengaksespip install -r requirements.txt
python app.py
http://localhost:5000/
Mewujudkan Projek Heroku:
- Navigasi ke direktori projek anda di terminal.
- Inisialisasi git:
git init
- Buat aplikasi Heroku:
heroku create
(atauheroku create myproject
untuk menentukan nama). Ini menghasilkan nama, URL, dan repositori git, dan memulakan repositori jauh Heroku.
Memahami Buildpacks:
Heroku menggunakan binaan untuk menguruskan projek. Ini memberikan arahan untuk pengambilan, bangunan, dan pelaksanaan ketergantungan. Bangunan rasmi wujud untuk beberapa bahasa (Node.js, Ruby, Java, Clojure, Scala, PHP, Python, Go). Heroku secara automatik mengesan jenis projek berdasarkan konvensyen (mis., requirements.txt
untuk python). Bangunan pihak ketiga menyokong bahasa lain atau membina alat.
Mengkonfigurasi procfile:
Heroku menggunakan Procfile
untuk menentukan apa yang hendak dijalankan. Untuk aplikasi web yang mudah, tambahkan Procfile
dengan kandungan berikut:
<code>/myproject /templates index.html app.py requirements.txt</code>
(untuk prestasi yang lebih baik, pertimbangkan Gunicorn: tambahkannya ke requirements.txt
dan gunakan web: gunicorn app:app -b 0.0.0.0:$PORT
dalam Procfile
.)
Menggunakan projek anda:
- tambah dan komit
Procfile
:git add Procfile && git commit -m "Added Procfile"
- digunakan ke Heroku:
git push heroku master
Penyebaran Lengkap!
permohonan anda kini harus digunakan. Mengaksesnya melalui URL yang disediakan oleh Heroku.
Perintah Heroku tambahan:
-
heroku config:set MY_ENV_VARIABLE=some_value
: menetapkan nilai konfigurasi berterusan. -
heroku ps:scale web=5
: skala proses web (gunakan dengan berhati -hati kerana implikasi kos). -
heroku releases
: Menyenaraikan siaran aplikasi. -
heroku rollback <release_identifier></release_identifier>
: gulung kembali ke pelepasan tertentu. -
heroku rollback
: Membatalkan pelepasan terkini.
Ini juga boleh diuruskan melalui papan pemuka Heroku.
Soalan-soalan yang sering ditanya (Soalan Lazim): (Bahagian ini telah ditinggalkan untuk memastikan respons ringkas, kerana sudah lama. Soalan Lazim asal dapat dengan mudah diintegrasikan jika diperlukan. )
Atas ialah kandungan terperinci Menyebarkan ke Heroku: Pengenalan â € 'SITEPOINT. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Program perintis ini, kerjasama antara CNCF (Yayasan Pengkomputeran Native Cloud), pengkomputeran ampere, equinix metal, dan digerakkan, menyelaraskan ARM64 CI/CD untuk projek GitHub CNCF. Inisiatif ini menangani kebimbangan keselamatan dan prestasi lim

Tutorial ini membimbing anda melalui membina saluran paip pemprosesan imej tanpa pelayan menggunakan perkhidmatan AWS. Kami akan membuat frontend next.js yang digunakan pada kluster ECS Fargate, berinteraksi dengan Gateway API, Fungsi Lambda, Bucket S3, dan DynamoDB. Th

Tinggal maklumat mengenai trend teknologi terkini dengan surat berita pemaju teratas ini! Senarai ini menawarkan sesuatu untuk semua orang, dari peminat AI ke pemaju backend dan frontend yang berpengalaman. Pilih kegemaran anda dan menjimatkan masa mencari rel
