Rumah > Peranti teknologi > industri IT > Menyebarkan ke Heroku: Pengenalan â € 'SITEPOINT

Menyebarkan ke Heroku: Pengenalan â € 'SITEPOINT

Jennifer Aniston
Lepaskan: 2025-02-18 09:19:10
asal
709 orang telah melayarinya

Deploying to Heroku: An introduction — 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 menggunakan Procfile. 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.

Deploying to Heroku: An introduction — SitePoint Heroku adalah platform yang diurus untuk penggunaan aplikasi Web Rapid. Ia secara automatik menyediakan sumber pelayan, memudahkan penggunaan ke operasi

. Tingkat percuma membolehkan penyebaran awal yang mudah dan bebas kos (tertakluk kepada batasan lalu lintas).

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.)
  1. 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>
Salin selepas log masuk
Salin selepas log masuk

:

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'))
Salin selepas log masuk

templates/index.html

:
<!DOCTYPE html>
<html>
  <head>
    <title>My example project</title>
  </head>
  <body>
    <h1>This is my project.</h1>
  </body>
</html>
Salin selepas log masuk

requirements.txt Pasang kebergantungan:

<code>Flask==0.10.1</code>
Salin selepas log masuk

Sahkan fungsi dengan menjalankan

dan mengakses
pip install -r requirements.txt
Salin selepas log masuk
.

python app.py http://localhost:5000/ Mewujudkan Projek Heroku:

  1. Navigasi ke direktori projek anda di terminal.
  2. Inisialisasi git: git init
  3. Buat aplikasi Heroku: heroku create (atau heroku 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>
Salin selepas log masuk
Salin selepas log masuk

(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:

  1. tambah dan komit Procfile: git add Procfile && git commit -m "Added Procfile"
  2. 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!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan