文章目录
  1. 1. 前言
  2. 2. 安装
  3. 3. 项目
  4. 4. 发布
  5. 5. 域名
  6. 6. 参考资料
  7. 7. 文档信息

前言


市场上的云应用托管平台有很多,之所以选择 Heroku ,主要原因是知名度比较高,口碑比较好。

首先,介绍一下 Heroku 是什么?官方给出的描述:

Heroku is a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud.

Heroku 是一个平台即服务(PaaS),使开发人员完成的在云端编译、运行和操作应用程序。

由于使用的是平台提供的免费试用体验版服务,所以我们要清楚的了解具体的规则限制:

  • 内存:
    RAM 限制为 512 MB

  • 进程:
    1 web 或 1 worker,2 个进程。

  • dyno 时长:
    免费剩余时长是根据账号池中总的剩余时长统计,在有剩余时长的情况下,若服务闲置 30 分钟之后,会进行休眠。再次请求访问会被唤醒,可能会有 10 秒左右延迟。不过平台每个月会有 550 小时免费配额,绑定信用卡之后会再增加 550 小时免费配额。不过每个 dyno 同时消耗的时长是累计的哦。

  • 自定义域名:
    绑定自定义域名,不过提前是需要绑定信用卡。

同时 Heroku 还提供了其他有限制的免费服务,你具体可以在这里面找到:https://www.heroku.com/pricing

安装


使用 brew 安装 Heroku 命令行工具:

1
brew install heroku/brew/heroku

命令安装完成之后,我们需要进行登录,若使用HTTP/HTTPS代理,请提前设置。若没有使用代理,请直接运行 heroku login

1
2
3
4
export HTTP_PROXY=http://127.0.0.1:1087
or
export HTTPS_PROXY=https://127.0.0.1:1087
heroku login

然后在浏览器中弹窗网页进行登录。

项目


首先假设你已拥有能够编译和运行的项目代码,你需要对项目使用 Git 仓库管理,Heroku 是基于 Git 仓库的。

在云应用发布之前,需要设置运行和编译环境:

1
heroku buildpacks:set heroku/python #这里设置为 Python 环境

在网页端修改 App name 之后,需要更新本地远程仓库地址:

1
2
git remote rm heroku #先移除 heroku
heroku git:remote -a new_app_name

本地测试运行:

1
heroku local web

查看日志:

1
heroku logs --tail

查看 dyno 使用情况

1
heroku ps

首次将代码推送上去之后,需要分配资源:

1
heroku ps:scale web=1

发布


云应用的发布方式,是基于 Git 仓库的,可以通过命令方式或是 GitHub 触发方式或是通过容器注册方式。下面我们介绍通过本地仓库命令行方式:

Git 仓库支持的协议有两种:

  • HTTPS 协议
    系统默认是 HTTPS,类似为:https://git.heroku.com/[appname].git

    1
    heroku git:remote -a appname # 通过 heroku 添加远程地址
  • SSH 协议

    1
    2
    3
    4
    5
    git remote -v
    git remote rm heroku
    git remote add heroku
    [email protected]:project(full url).git
    heroku keys:add

设置完成后,通过 Git 将代码推送到云平台,此过程会进行编译。

1
git push heroku master

添加 ssh key:

1
heroku keys:add

查看 ssh key

1
heroku keys

此命令输入已存在的keys,eg:

1
2
ssh-rsa AAAAB3NzaC...JxPK272+Yx [email protected]
ssh-rsa AAAAB3NzaC...UHfS9xgQ== [email protected]

移除添加过的 ssh key:

1
heroku keys:remove [email protected]

域名


添加自定义域名:

1
heroku domains:add blog.devhitao.com

若添加成功,记得查看对应的 target url,并在 DNS 中指向该 Target URL:

1
host blog.devhitao.com

注意:绑定自定义域名,前提是将信用卡绑定到账号上。

参考资料


文档信息


  • 版权声明:自由转载-保持署名-非商用-非衍生 ( CC BY-NC-ND 4.0 )
文章目录
  1. 1. 前言
  2. 2. 安装
  3. 3. 项目
  4. 4. 发布
  5. 5. 域名
  6. 6. 参考资料
  7. 7. 文档信息