Home > Java > javaTutorial > Deploy JavaEE applications using Docker Containers

Deploy JavaEE applications using Docker Containers

PHPz
Release: 2024-06-05 20:29:00
Original
869 people have browsed it

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.

使用Docker Container部署JavaEE应用程序

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

  • Install Docker Desktop
  • Install Java JDK 11+
  • Ready JavaEE Application

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"]
Copy after login
  • 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 .
Copy after login

3. Run Docker container

After building the image, run the following command to start the container:

docker container run -p 8080:8080 myapp-image
Copy after login
  • -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);
    }
}
Copy after login

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!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template