以前、Heroku にユーザ登録した記事を書きました。
www.shookuro.com
では、実際に Spring boot で作成した Web アプリを Heroku にデプロイして公開してみたいと思います。
アプリは "Hello! Spring Boot!!" という文字列を表示するだけの簡単なものです。
作り方は以前の記事を参考にしてください。
yyama1556.hateblo.jp
では、さっそくやってみます。
Git 管理下に置く
まず、Git の設定。
コマンドプロンプトでプロジェクトのルートフォルダに移動し、[ git init ]で ソースを GIT で管理させます。
そのあと [ git add --all ]で git のインデックスに登録。
その後、[ git commit -m "web app" ] のようにコミットします。
コマンドの入出力の例です。
C:\Users\yyama>cd C:\workspace\demo C:\workspace\demo>git init Initialized empty Git repository in C:/workspace/demo/.git/ C:\workspace\demo>git add --all C:\workspace\demo>git commit -m "web app" [master (root-commit) e2d7aaa] web app 10 files changed, 486 insertions(+) create mode 100644 .gitignore create mode 100644 .mvn/wrapper/maven-wrapper.jar create mode 100644 .mvn/wrapper/maven-wrapper.properties create mode 100644 mvnw create mode 100644 mvnw.cmd create mode 100644 pom.xml create mode 100644 src/main/java/org/yyama/demo/DemoApplication.java create mode 100644 src/main/java/org/yyama/demo/DemoController.java create mode 100644 src/main/resources/application.properties create mode 100644 src/test/java/org/yyama/demo/DemoApplicationTests.java
Heroku のセットアップ
では、Heroku のほうのセットアップに移ります。
[ heroku create ] と入力し、Heroku 側でアプリケーションを受け入れられるようにします。出力にあるように[ https://fast-taiga-15372.herokuapp.com/ ]がこのアプリへの URL になります。
C:\workspace\demo>heroku create Creating app... done, fast-taiga-15372 https://fast-taiga-15372.herokuapp.com/ | https://git.heroku.com/fast-taiga-15372.git
この時点で Heroku の自分のダッシュボードには、アプリが表示されるようになります。
続いてコマンドプロンプトで [ git push heroku master ]と入力すると、ずらずらとログが吐かれてデプロイが行われます。
C:\workspace\demo>git push heroku master Counting objects: 26, done. Delta compression using up to 4 threads. Compressing objects: 100% (17/17), done. Writing objects: 100% (26/26), 46.71 KiB | 0 bytes/s, done. Total 26 (delta 0), reused 0 (delta 0) remote: Compressing source files... done. remote: Building source: remote: remote: -----> Java app detected remote: -----> Installing OpenJDK 1.8... done remote: -----> Executing: ./mvnw -DskipTests clean dependency:list install remote: /tmp/build_a5c941b997d2cd319183cfbb0da9e662 remote: Downloading https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.0/apache-maven-3.5.0-bin.zip remote: .................................................................................................................................................................................................................................................................................................................................................................................................................................................. remote: Unzipping /tmp/build_a5c941b997d2cd319183cfbb0da9e662/.m2/wrapper/dists/apache-maven-3.5.0-bin/6ps54u5pnnbbpr6ds9rppcc7iv/apache-maven-3.5.0-bin.zip to /tmp/build_a5c941b997d2cd319183cfbb0da9e662/.m2/wrapper/dists/apache-maven-3.5.0-bin/6ps54u5pnnbbpr6ds9rppcc7iv remote: Set executable permissions for: /tmp/build_a5c941b997d2cd319183cfbb0da9e662/.m2/wrapper/dists/apache-maven-3.5.0-bin/6ps54u5pnnbbpr6ds9rppcc7iv/apache-maven-3.5.0/bin/mvn remote: [INFO] Scanning for projects... ~~~ (略) ~~~ remote: [INFO] ------------------------------------------------------------------------ remote: -----> Discovering process types remote: Procfile declares types -> (none) remote: Default types for buildpack -> web remote: remote: -----> Compressing... remote: Done: 60.7M remote: -----> Launching... remote: Released v3 remote: https://fast-taiga-15372.herokuapp.com/ deployed to Heroku remote: remote: Verifying deploy... done. To https://git.heroku.com/fast-taiga-15372.git * [new branch] master -> master
では、[ https://fast-taiga-15372.herokuapp.com/ ]にアクセスしてみます。
Heroku 向けの設定なども非常に簡単でした。
これでアプリが全世界に公開できました。
アプリ名の変更
最後にアプリ名を変更してみましょう。
コマンドプロンプトで、「heroku rename アプリ名」と入力します。するとアプリの名前や アプリの URL、および Heroku の git リモートアドレスが自動で変更できます。ここではアプリ名は「hello-heroku-yyama」としました。これでアプリの URL は
https://hello-heroku-yyama.herokuapp.com/ に変更されました。しばらく置いておくのでアクセスしてみてください。
アプリ名はグローバルで一意な必要があるみたいで、誰かがすでに使用している場合「Name is already taken」と怒られます。
次回は Heroku の PostgreSql を使用してみます。
【Heroku Postgresql】アドオンを追加し、テーブル操作を行う - 山崎屋の技術メモ
今日はここまで。でわ。

プロフェッショナルのための 実践Heroku入門 プラットフォーム・クラウドを活用したアプリケーション開発と運用 (書籍)
- 作者: 相澤歩,arton,鳥井雪,織田敬子
- 出版社/メーカー: KADOKAWA/アスキー・メディアワークス
- 発売日: 2014/09/19
- メディア: 大型本
- この商品を含むブログ (3件) を見る

- 作者: 掌田津耶乃,相澤歩
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2013/03/15
- メディア: 大型本
- クリック: 7回
- この商品を含むブログ (4件) を見る

LINE BOTを作ろう! Messaging APIを使ったチャットボットの基礎と利用例
- 作者: 立花翔
- 出版社/メーカー: 翔泳社
- 発売日: 2017/05/12
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る