SlideShare a Scribd company logo
Deploying JEE to HEROKU
Bogdan Marian
12 October 2016
About Me
• iQuest Java developer since 2015
• LinkedIn: https://www.linkedin.com/in/bmarian
• GitHub: https://github.com/satrapu
Bogdan Marian
Heroku
• Cloud application platform
• Cedar stack (Heroku managed OS image)
• Ubuntu 14.04 LTS
• Process model implemented via dyno manager
• Dyno = Linux container
• Configurations: web (HTTP only, must bind to PORT or be killed),
worker (anything, except HTTP), one-off (“heroku run” command)
• Types: free, hobby, standard, performance, enterprise
• A process is declared in a Procfile: “<process_type>: <command>”
• Heroku Elements (add-ons, buttons, buildpacks)
• Different languages (Java, PHP, Python, Ruby, etc.)
• Different databases
• Relational: MySQL, PostgreSQL, SQLite, etc.
• NoSQL: Mongo DB, Redis, etc.
• Much more
• Heroku CLI
• Java
• Different deployment models, including git and WAR
• No Java EE support
• Run Java processes via: java –jar *.jar
General Information
WildFly Swarm
• Just-enough-appserver
• Construction toolkit for minimalistic Java EE runtimes based on WildFly
10.1.0 Final application server
• Uberjar
• Run Java EE applications via: java –jar *-swarm.jar
General Information
Demo
• Source code: https://github.com/satrapu/iquest-keyboards-and-mice-brasov-
2016
• CI/CD: https://drone.io/github.com/satrapu/iquest-keyboards-and-mice-
brasov-2016/latest
• Live application: https://iq-kam-brasov-2016.herokuapp.com/demo
Deploying JEE to Heroku
Demo
• On Heroku side
• Create a free account
• Add a new application
• Add a PostgreSQL database
• Setup Java specific config vars
• Add Java buildpack
• On developer machine
• Install Heroku CLI
• Install Git
• Clone repo
• Setup Heroku Git remote
• Deploy via Git command: “git push heroku master”
• Optionally, on drone.io side (replaces “git push …”)
• Create a free account
• Setup build with Heroku deployment
• Upload SSH key to Heroku account
• Click the “Build Now” button
Steps
References
• https://github.com/satrapu/iquest-keyboards-and-mice-brasov-
2016/blob/master/README.md#references
Hosted on GitHub
Q&A
© Copyright 2016, iQuest Group. All rights reserved.
Thank You!
iquestgroup.com
business@iquestgroup.com

More Related Content

What's hot (20)

PDF
Introduction to React Native - Marcin Mazurek (09.06.2017)
Grand Parade Poland
 
PDF
10 things you should know about django
Adieu
 
PDF
Jetpack SDK: The new possibility of the extensions on browser
littlebtc
 
PPTX
Azure Websites
Senthamil Selvan
 
PPTX
Pyramid web framework
Nathan Van Gheem
 
PPTX
Monoliths vs microservices
ahmadezzeir
 
PPTX
Building Custom Visual Composer Elements
Burak Dogan
 
PPTX
Testing your Single Page Application
Wekoslav Stefanovski
 
PDF
MozTW Jetpack Workshop: Taichung
littlebtc
 
KEY
MozTW Jetpack Workshop: Taipei
littlebtc
 
PDF
Modern Web Framework : Play framework
Suman Adak
 
PPTX
WebNetConf 2012 - Single Page Apps
Pop Apps
 
PDF
Comunicando nuestras apps con el mundo exterior
Roberto Luis Bisbé
 
PDF
ExtJS: La piattaforma vincente (tools)
Eugenio Minardi
 
PDF
Git branching
iCapps
 
PPTX
Oleksandr Skachkov "Running С# in your Web Browser with WebAssembly"
Fwdays
 
PDF
Penny coventry fiddler-spsbe23
BIWUG
 
PDF
IBM Domino Modernizing apps with Angularjs
Dominopoint - Italian Lotus User Group
 
PPTX
Containers #101 Meetup: Docker Build & Test Flow
Brittany Ingram
 
PDF
Iasi code camp 12 october 2013 play oriented development - leon daniel
Daniel Leon
 
Introduction to React Native - Marcin Mazurek (09.06.2017)
Grand Parade Poland
 
10 things you should know about django
Adieu
 
Jetpack SDK: The new possibility of the extensions on browser
littlebtc
 
Azure Websites
Senthamil Selvan
 
Pyramid web framework
Nathan Van Gheem
 
Monoliths vs microservices
ahmadezzeir
 
Building Custom Visual Composer Elements
Burak Dogan
 
Testing your Single Page Application
Wekoslav Stefanovski
 
MozTW Jetpack Workshop: Taichung
littlebtc
 
MozTW Jetpack Workshop: Taipei
littlebtc
 
Modern Web Framework : Play framework
Suman Adak
 
WebNetConf 2012 - Single Page Apps
Pop Apps
 
Comunicando nuestras apps con el mundo exterior
Roberto Luis Bisbé
 
ExtJS: La piattaforma vincente (tools)
Eugenio Minardi
 
Git branching
iCapps
 
Oleksandr Skachkov "Running С# in your Web Browser with WebAssembly"
Fwdays
 
Penny coventry fiddler-spsbe23
BIWUG
 
IBM Domino Modernizing apps with Angularjs
Dominopoint - Italian Lotus User Group
 
Containers #101 Meetup: Docker Build & Test Flow
Brittany Ingram
 
Iasi code camp 12 october 2013 play oriented development - leon daniel
Daniel Leon
 

Viewers also liked (8)

PDF
Ansible Crash Course
Peter Sankauskas
 
PDF
London HUG 8/3 - Nomad
London HashiCorp User Group
 
PDF
Hashicorp Nomad
Ivan Glushkov
 
PDF
Summer School 2013 - What is iPaaS and why it is important
WSO2
 
PPTX
The Nomad Financial Culture Code
Jonathan Gass
 
PDF
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
OpenShift Origin
 
PDF
Tracxn Research: PaaS Landscape Report, August 2016
Tracxn
 
PDF
再考PaaS 〜 Heroku最新情報で考える、2017年のPaaS選択基準 〜
Mitch Okamoto
 
Ansible Crash Course
Peter Sankauskas
 
London HUG 8/3 - Nomad
London HashiCorp User Group
 
Hashicorp Nomad
Ivan Glushkov
 
Summer School 2013 - What is iPaaS and why it is important
WSO2
 
The Nomad Financial Culture Code
Jonathan Gass
 
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
OpenShift Origin
 
Tracxn Research: PaaS Landscape Report, August 2016
Tracxn
 
再考PaaS 〜 Heroku最新情報で考える、2017年のPaaS選択基準 〜
Mitch Okamoto
 
Ad

Similar to Deploying JEE to Heroku (20)

PDF
Evolution of deploy.sh
Leonid Mamchenkov
 
PDF
Errai Workspaces
hbraun
 
PDF
Errai Workspaces
hbraun
 
PDF
Ci. Drupal Camp Berlin 2014
Yuriy Gerasimov
 
PDF
Heroku
Eberhard Wolff
 
PPSX
Introducing Heroku for Beginners
Vijaya Sankar Natarajan
 
PPTX
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
E. Camden Fisher
 
PDF
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Howard Greenberg
 
PPTX
Introduction To Web Development & The New Digital Workplace
Jen Wei Lee
 
KEY
Portal - Lego set for app development
bdaw
 
PPT
Node and Azure
Jason Gerard
 
PPTX
Rapid Application Development on Google App Engine for Java
Kunal Dabir
 
PDF
Gianluca Varisco - DevOoops (Increase awareness around DevOps infra security)
Codemotion
 
KEY
Google App Engine Java, Groovy and Gaelyk
Guillaume Laforge
 
PPTX
How dojo works
Amit Tyagi
 
PPT
Introduction to node.js aka NodeJS
JITENDRA KUMAR PATEL
 
PDF
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Michael Lihs
 
PDF
Getting Started With Xdebug
Jeremy Ward
 
PPTX
SeaJUG 5 15-2018
Will Iverson
 
PPTX
Continuous testing
Oleksandr Metelytsia
 
Evolution of deploy.sh
Leonid Mamchenkov
 
Errai Workspaces
hbraun
 
Errai Workspaces
hbraun
 
Ci. Drupal Camp Berlin 2014
Yuriy Gerasimov
 
Introducing Heroku for Beginners
Vijaya Sankar Natarajan
 
CT Software Developers Meetup: Using Docker and Vagrant Within A GitHub Pull ...
E. Camden Fisher
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Howard Greenberg
 
Introduction To Web Development & The New Digital Workplace
Jen Wei Lee
 
Portal - Lego set for app development
bdaw
 
Node and Azure
Jason Gerard
 
Rapid Application Development on Google App Engine for Java
Kunal Dabir
 
Gianluca Varisco - DevOoops (Increase awareness around DevOps infra security)
Codemotion
 
Google App Engine Java, Groovy and Gaelyk
Guillaume Laforge
 
How dojo works
Amit Tyagi
 
Introduction to node.js aka NodeJS
JITENDRA KUMAR PATEL
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Michael Lihs
 
Getting Started With Xdebug
Jeremy Ward
 
SeaJUG 5 15-2018
Will Iverson
 
Continuous testing
Oleksandr Metelytsia
 
Ad

Recently uploaded (20)

PDF
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
PDF
Supabase Meetup: Build in a weekend, scale to millions
Carlo Gilmar Padilla Santana
 
PPT
Brief History of Python by Learning Python in three hours
adanechb21
 
PDF
SAP GUI Installation Guide for Windows | Step-by-Step Setup for SAP Access
SAP Vista, an A L T Z E N Company
 
PDF
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
PDF
Enhancing Security in VAST: Towards Static Vulnerability Scanning
ESUG
 
PDF
SAP GUI Installation Guide for macOS (iOS) | Connect to SAP Systems on Mac
SAP Vista, an A L T Z E N Company
 
PPTX
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
PPTX
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
PPTX
GALILEO CRS SYSTEM | GALILEO TRAVEL SOFTWARE
philipnathen82
 
PDF
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 
PDF
System Center 2025 vs. 2022; What’s new, what’s next_PDF.pdf
Q-Advise
 
PDF
How Agentic AI Networks are Revolutionizing Collaborative AI Ecosystems in 2025
ronakdubey419
 
PDF
Virtual Threads in Java: A New Dimension of Scalability and Performance
Tier1 app
 
PDF
Step-by-Step Guide to Install SAP HANA Studio | Complete Installation Tutoria...
SAP Vista, an A L T Z E N Company
 
PPTX
Farrell__10e_ch04_PowerPoint.pptx Programming Logic and Design slides
bashnahara11
 
PDF
What companies do with Pharo (ESUG 2025)
ESUG
 
PPTX
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
PDF
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
PDF
Troubleshooting Virtual Threads in Java!
Tier1 app
 
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
Supabase Meetup: Build in a weekend, scale to millions
Carlo Gilmar Padilla Santana
 
Brief History of Python by Learning Python in three hours
adanechb21
 
SAP GUI Installation Guide for Windows | Step-by-Step Setup for SAP Access
SAP Vista, an A L T Z E N Company
 
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
Enhancing Security in VAST: Towards Static Vulnerability Scanning
ESUG
 
SAP GUI Installation Guide for macOS (iOS) | Connect to SAP Systems on Mac
SAP Vista, an A L T Z E N Company
 
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
GALILEO CRS SYSTEM | GALILEO TRAVEL SOFTWARE
philipnathen82
 
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 
System Center 2025 vs. 2022; What’s new, what’s next_PDF.pdf
Q-Advise
 
How Agentic AI Networks are Revolutionizing Collaborative AI Ecosystems in 2025
ronakdubey419
 
Virtual Threads in Java: A New Dimension of Scalability and Performance
Tier1 app
 
Step-by-Step Guide to Install SAP HANA Studio | Complete Installation Tutoria...
SAP Vista, an A L T Z E N Company
 
Farrell__10e_ch04_PowerPoint.pptx Programming Logic and Design slides
bashnahara11
 
What companies do with Pharo (ESUG 2025)
ESUG
 
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
Troubleshooting Virtual Threads in Java!
Tier1 app
 

Deploying JEE to Heroku

  • 1. Deploying JEE to HEROKU Bogdan Marian 12 October 2016
  • 2. About Me • iQuest Java developer since 2015 • LinkedIn: https://www.linkedin.com/in/bmarian • GitHub: https://github.com/satrapu Bogdan Marian
  • 3. Heroku • Cloud application platform • Cedar stack (Heroku managed OS image) • Ubuntu 14.04 LTS • Process model implemented via dyno manager • Dyno = Linux container • Configurations: web (HTTP only, must bind to PORT or be killed), worker (anything, except HTTP), one-off (“heroku run” command) • Types: free, hobby, standard, performance, enterprise • A process is declared in a Procfile: “<process_type>: <command>” • Heroku Elements (add-ons, buttons, buildpacks) • Different languages (Java, PHP, Python, Ruby, etc.) • Different databases • Relational: MySQL, PostgreSQL, SQLite, etc. • NoSQL: Mongo DB, Redis, etc. • Much more • Heroku CLI • Java • Different deployment models, including git and WAR • No Java EE support • Run Java processes via: java –jar *.jar General Information
  • 4. WildFly Swarm • Just-enough-appserver • Construction toolkit for minimalistic Java EE runtimes based on WildFly 10.1.0 Final application server • Uberjar • Run Java EE applications via: java –jar *-swarm.jar General Information
  • 5. Demo • Source code: https://github.com/satrapu/iquest-keyboards-and-mice-brasov- 2016 • CI/CD: https://drone.io/github.com/satrapu/iquest-keyboards-and-mice- brasov-2016/latest • Live application: https://iq-kam-brasov-2016.herokuapp.com/demo Deploying JEE to Heroku
  • 6. Demo • On Heroku side • Create a free account • Add a new application • Add a PostgreSQL database • Setup Java specific config vars • Add Java buildpack • On developer machine • Install Heroku CLI • Install Git • Clone repo • Setup Heroku Git remote • Deploy via Git command: “git push heroku master” • Optionally, on drone.io side (replaces “git push …”) • Create a free account • Setup build with Heroku deployment • Upload SSH key to Heroku account • Click the “Build Now” button Steps
  • 8. Q&A
  • 9. © Copyright 2016, iQuest Group. All rights reserved. Thank You! iquestgroup.com [email protected]