1、 注册 Heroku 免费账户
浏览器打开Heroku官网,注册一个免费的用户,在注册时选择 java
语言
2、安装 Heroku CLI
可以从Heroku官网的Getting Started引导页中下载,选择适合的系统版本,安装到本机电脑
3、登录到 Heroku
打开命令行,切换到你要发布到Heroku的project 目录下,或者使用IDEA的Terminal直接切换到你的project目录下:
下面涉及到的所有命令都是在项目文件目录下执行的(我的项目目录为 blog)
$ heroku login
Enter your Heroku credentials.
Email: [email protected]
Password:
使用 heroku login 命令,输入注册email和密码,登录
4、创建 Heroku APP
$ heroku create
Creating warm-eyrie-9006... done, stack is cedar-14
http://warm-eyrie-9006.herokuapp.com/ | https://git.heroku.com/warm-eyrie-9006.git
Git remote heroku added
该命令会自动在Heroku云端创建项目,项目名称随机生成,当前生成项目 warm-eyrie-9006
5、为本地项目创建 Git repository
本地项目部署到Heroku之前,需要先把本地项目存储到 Git 仓库。这里要求你本地已安装并配置好 Git 工具 。执行以下命令:
$ git init
$ git add .
$ git commit -m "first commit"
以上命令在你项目目录路径下执行
6、部署本地项目代码到Heroku
$ git push heroku master
Initializing repository, done.
Counting objects: 110, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (87/87), done.
Writing objects: 100% (110/110), 212.71 KiB | 0 bytes/s, done.
Total 110 (delta 30), reused 0 (delta 0)
-----> Java app detected
-----> Installing OpenJDK 1.8... done
-----> Installing Maven 3.3.3... done
-----> Executing: mvn -B -DskipTests=true clean install
[INFO] Scanning for projects...
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 11.417s
[INFO] Finished at: Thu Sep 11 17:16:38 UTC 2014
[INFO] Final Memory: 21M/649M
[INFO] ------------------------------------------------------------------------
-----> Discovering process types
Procfile declares types -> web
7、Heroku 上添加 MySQL 数据库
参考:http://selimsalihovic.github.io/2016-02-07-using-mysql-on-heroku/
到 Heroku 官网,用创建好的账户登录进去。然后打开自己已创建的项目主页
点击,Configure Add - ons
选择ClearDB MySQL之后,如果新用户的话,会提示你绑定信用卡信息。绑定信用卡后,才可以使用。这个是免费的,不会扣费。
你需要到用户设置里面,绑定信息栏目,绑定你的信用卡信息
绑定之后,选择安装 ClearDB MySQL 。
使用 heroku addons
命令可以看到已安装的数据库。
$ heroku addons
Add-on Plan Price State
────────────────────────────── ────── ───── ───────
cleardb (cleardb-closed-91123) ignite free created
└─ as CLEARDB_DATABASE
The table above shows add-ons and the attachments to the current app (lirenmi) or other apps.
8、获取数据库连接信息
使用 heroku config
命令可以获取 MySQL 数据库的连接 URL
$ heroku config
=== lirenmi Config Vars
CLEARDB_DATABASE_URL: mysql://b7ce049873150c:[email protected]/heroku_ea61f7c1c8e72d6?reconnect=true
获取MySQL数据库的连接用户名和密码:
从项目主页,找到已安装的 ClearDB MySQL数据库
点击进入数据库信息页面。
选择 System Information 找到连接数据库的用户名和密码
9、本地连接数据库,初始化信息
我使用了Navicat工具连接数据库,这里需要注意的是主机名或IP地址,选择数据库URL的一部分 us-cdbr-iron-east-05.cleardb.net
CLEARDB_DATABASE_URL: mysql://b7ce049873150c:[email protected]/heroku_ea61f7c1c8e72d6?reconnect=true
连接成功之后,可以创建数据库和初始化用户信息。
10、修改本地项目的数据库连接配置
修改本地项目的数据库连接配置
11、增加Procfile
配置文件
在项目根目录增加 Procfile 配置文件,配置内容如下:
web java -Dserver.port=$PORT $JAVA_OPTS -jar target/blog-0.0.1-SNAPSHOT.jar
12、编译和打包本地项目
项目根目录下执行:
$ mvn package -Dmaven.test.skip=true
获取
$ mvn clean install
13、再发布和提交到Heroku
项目根目录依次执行:
$ git init
$ git add .
$ git commit -m "released commit"
$ git push heroku master
现在程序已经配属到 Heroku 上了
14、打开项目访问主页
执行下面的命令,会在浏览器打开项目主页,我的项目主页地址为:https://lirenmi.herokuapp.com/
$ heroku open
15、跟踪日志
可以在本地查看 Heroku 的运行日志,执行以下命令:
$ heroku logs --tail
16、如果想更改Heroku上项目的名称可以使用以下方法
二.在终端iterm修改heroku app的名称
方法1:进入对应app的专案,修改app名称
1.打开终端,登录heroku,切换到要修该的app下
2.执行heroku apps:rename xxx
(xxx是你的app的新名称)
3.更新remote,
执行git remote rm heroku
执行heroku git:remote -a xxx
参考链接:
https://devcenter.heroku.com/articles/getting-started-with-java#introduction
http://selimsalihovic.github.io/2016-02-07-using-mysql-on-heroku/
http://xyy601-blog.logdown.com/posts/1387963-the-basics-how-to-rename-your-heroku-app-name
https://docs.spring.io/spring-boot/docs/1.5.8.RELEASE/reference/htmlsingle/#cloud-deployment-heroku