Deploy JavaEE applications using Docker containers: Create a Dockerfile to define the image, build the image, run the container and map the port, and then access the application in the browser. Sample JavaEE application: REST API interacts with database, accessible on localhost after deployment via Docker.
Deploying JavaEE applications using Docker Container
Introduction
Docker is a A containerization platform that allows you to encapsulate your application and all its dependencies and deploy them uniformly. This tutorial guides you through containerizing and deploying JavaEE applications using Docker.
Prerequisites
Steps
1. Create Dockerfile
Create a file named Dockerfile
, Used to define Docker images.
FROM openjdk:11-jdk COPY target/myapp.war /myapp.war CMD ["java", "-jar", "/myapp.war"]
FROM
indicates the base image. COPY
Copy the JavaEE WAR file to the container. CMD
Set the default command of the container. 2. Build the Docker image
In the directory where the Dockerfile is stored, run the following command:
docker image build -t myapp-image .
3. Run Docker container
After building the image, run the following command to start the container:
docker container run -p 8080:8080 myapp-image
-p 8080:8080
Map the 8080 port of the container to the host's Port 8080. 4. Test the application
Access in the browserhttp://localhost:8080/<app-context-path>
.
Practical case
The following is a sample JavaEE application deployed using Docker:
A simple REST API that provides the function of interacting with the database .
Implementation:
@RestController @RequestMapping("/api/data") public class DataController { @Autowired private DataService dataService; @GetMapping public List<Data> getAllData() { return dataService.findAll(); } @PostMapping public Data createData(@RequestBody Data data) { return dataService.save(data); } }
Deployment:
Follow the steps above to build and deploy this application using Dockerfile
and Docker compose
.
The above is the detailed content of Deploy JavaEE applications using Docker Containers. For more information, please follow other related articles on the PHP Chinese website!