This example app shows how to package a Spring Boot application with Docker. See Add Docker to Your Spring Boot Application to see how it was built.
- Java 11: If you don't have Java 11, you can install OpenJDK. Instructions are found on the OpenJDK website.
- Docker - We recommend Docker Desktop
- Okta Developer Account: Go to the Okta website and sign up for a free developer account, if you haven't already.
Okta has Authentication and User Management APIs that reduce development time with instant-on, scalable user infrastructure. Okta's REST API and makes it easy for developers to authenticate, manage, and secure users + roles in any application.
To install this example application, run the following commands:
git clone https://github.com/oktadeveloper/spring-boot-docker-example.git
Before you begin, you'll need a free Okta developer account. Install the Okta CLI and run okta register
to sign up for a new account. If you already have an account, run okta login
.
Then, run okta apps create
. Select the default app name, or change it as you see fit. Choose Web and press Enter.
Select Okta Spring Boot Starter. Accept the default Redirect URI values provided for you. That is, a Login Redirect of http://localhost:8080/login/oauth2/code/okta
and a Logout Redirect of http://localhost:8080
.
The Okta CLI will create an OIDC Web App in your Okta Org. It will add the redirect URIs you specified and grant access to the Everyone group. You will see output like the following when it's finished:
Okta application configuration has been written to:
/path/to/app/src/main/resources/application.properties
Open src/main/resources/application.properties
to see the issuer and credentials for your app.
okta.oauth2.issuer=https://dev-133337.okta.com/oauth2/default
okta.oauth2.client-id=0oab8eb55Kb9jdMIr5d6
okta.oauth2.client-secret=NEVER-SHOW-SECRETS
You can also use the Okta Admin Console to create your app. See Create a Spring Boot App for more information.
To run the Spring Boot application
./mvnw spring-boot:run
See the [blog post] for details on building the Docker container and managing your configuration.
Please post any questions as comments on the [blog post] or post them to Stack Overflow with the okta
tag.
Apache 2.0, see LICENSE.