搜索
首页科技周边IT业界部署到Heroku:简介 - sitepoint

Deploying to Heroku: An introduction — SitePoint

键突出显示:

Heroku使用其托管服务器平台简化了Web应用程序部署。 它可以自动化服务器资源分配,并通过
    启用轻松部署。 可用于低流量应用程序的免费层。
  • git push> Heroku使用BuildPacks(用于依赖关系管理,构建和运行您的项目)来管理项目。 它支持许多语言,并且可以自动检测项目类型。第三方Build Packs处理不支持的语言或构建工具。>
  • 决定了Heroku执行的内容。 配置
  • 并将其添加到存储库后,使用
  • >实现部署。 其他命令管理持续配置,比例流程和处理回滚。> Procfile 特别感谢Matthew Wilkin的宝贵同行评审。 Procfile本指南解释了Heroku及其Web应用程序部署过程。 git push
Heroku是一个快速Web应用程序部署的托管平台。 它会自动提供服务器资源,从而简化了部署到

操作。 免费的层可以轻松且无成本成本的初始部署(受流量限制)。> 虽然与专门的DevOps团队相比具有成本效益,但高流量应用程序可以产生巨大的成本(每个Dyno每月费用为25美元,数据库增加的费用都在增加)。

>开始之前:

>

遵循本指南,请确保您有:Deploying to Heroku: An introduction — SitePoint

heroku工具belt(命令行实用程序)。git push> 已安装和配置的git。 (建议熟悉git。)

>

如果您有一个现成的项目,请跳过下一节,然后继续“创建Heroku项目”。

示例项目:

此示例使用Python烧瓶应用程序。 您可以适应其他项目的过程。 如果您有自己的项目,请跳过本节。

>

创建一个项目目录(例如,
    ):>
  1. 填充文件如下:

myproject

>安装依赖项:
<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'))
创建一个Heroku项目:

>

  1. >导航到终端中的项目目录。
  2. >初始化git:git init
  3. 创建一个Heroku应用程序:heroku create(或指定名称)。 这会生成一个名称,URL和GIT存储库,并初始化Heroku Remote存储库。heroku create myproject

理解构建包:

> Heroku使用BuildPacks来管理项目。 这些提供了依赖检索,构建和执行的说明。 有几种语言的官方构建包(Node.js,Ruby,Java,Clojure,Scala,Php,Python,GO)。 Heroku会根据约定自动检测项目类型(例如,对于Python)。 第三方Build Packs支持其他语言或构建工具。

requirements.txt

>配置procfile:

Heroku使用A来确定运行什么。 对于简单的Web应用程序,添加A

,其中包含以下内容:

> Procfile Procfile(为了提高性能,请考虑gunicorn:将其添加到

>中,并在
<code>/myproject
  /templates
    index.html
  app.py
  requirements.txt</code>
>中使用

。)requirements.txt> web: gunicorn app:app -b 0.0.0.0:$PORT Procfile部署项目:

添加并提交

    >部署到heroku:
  1. Procfile git add Procfile && git commit -m "Added Procfile"
  2. 部署完整!git push heroku master
  3. >
>现在应该部署您的应用程序。 通过Heroku提供的URL访问它。

>附加的heroku命令:

:设置持续的配置值。

:缩放Web过程(由于成本含义而谨慎使用)。
    >
  • heroku config:set MY_ENV_VARIABLE=some_value:列表应用程序版本。
  • heroku ps:scale web=5:回到特定版本。
  • >
  • heroku releases:删除最新版本。
  • >
  • heroku rollback <release_identifier></release_identifier>这些也可以通过Heroku仪表板进行管理。
  • >
  • >heroku rollback常见问题(常见问题解答):
(省略了本节以保持响应简洁,因为它已经很长时间了。如果需要,原始的常见问题解答很容易重新整合。 )

以上是部署到Heroku:简介 - sitepoint的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
21个开发人员新闻通讯将在2025年订阅21个开发人员新闻通讯将在2025年订阅Apr 24, 2025 am 08:28 AM

与这些顶级开发人员新闻通讯有关最新技术趋势的了解! 这个精选的清单为每个人提供了一些东西,从AI爱好者到经验丰富的后端和前端开发人员。 选择您的收藏夹并节省时间搜索REL

使用AWS ECS和LAMBDA的无服务器图像处理管道使用AWS ECS和LAMBDA的无服务器图像处理管道Apr 18, 2025 am 08:28 AM

该教程通过使用AWS服务来指导您通过构建无服务器图像处理管道。 我们将创建一个部署在ECS Fargate群集上的next.js前端,与API网关,Lambda函数,S3桶和DynamoDB进行交互。 Th

CNCF ARM64飞行员:影响和见解CNCF ARM64飞行员:影响和见解Apr 15, 2025 am 08:27 AM

该试点程序是CNCF(云本机计算基础),安培计算,Equinix金属和驱动的合作,简化了CNCF GitHub项目的ARM64 CI/CD。 该计划解决了安全问题和绩效

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。