You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 10, 2025. It is now read-only.
-[Example 2: Encode a Text Message](#example-2-encode-a-text-message)
@@ -49,6 +50,12 @@ Steganography is the practice of concealing a message or file within another fil
49
50
-**Robust Error Handling**: A global exception handler provides detailed, structured error responses (`ProblemDetail`) for API clients.
50
51
-**Traceability**: A `CorrelationIdFilter` adds a unique trace ID to every request for improved logging and debugging.
51
52
53
+
## Docker Hub
54
+
55
+
The official Docker image for this project is available on Docker Hub. You can pull it directly to run the application without building it from the source.
@@ -150,28 +157,32 @@ This method is ideal for development and debugging, as it uses Spring Boot's hot
150
157
```
151
158
The application will start on `http://localhost:8080`.
152
159
153
-
### 2. For Production (Docker Image)
160
+
### 2. For Production (Docker)
154
161
155
-
This is the recommended approach for production. It packages the application into a standard JVM-based Docker container.
162
+
This is the recommended approach for production. The `compose.yml` file is configured to use the pre-built image from Docker Hub.
156
163
157
-
1. **Build the Docker Image**:
158
-
Run the following Maven command. This uses Cloud Native Buildpacks to create a Docker image named `noobdevsam/spring-project-steganography-tool:0.0.1-SNAPSHOT`.
164
+
1. **Pull the Image (Optional)**:
165
+
You can pull the latest image from Docker Hub before starting the services.
Once the image is built, start the application and the database using Docker Compose.
171
+
This command will start both the application container and the database. Docker Compose will automatically pull the image if it's not available locally.
166
172
```bash
167
-
# This will use the image built in the previous step.
168
-
docker compose up
169
-
or
170
-
docker compose up -d db-mysql && docker compose up app
173
+
docker compose up -d
171
174
```
172
175
The application will be available on `http://localhost:8080`.
173
176
174
-
To stop all services, press `Ctrl+C` or run `docker compose down`.
177
+
3. **Building Locally (Alternative)**:
178
+
If you prefer to build the image from the source code instead of using the one from Docker Hub, run the following Maven command first:
179
+
```bash
180
+
# This requires Docker to be running.
181
+
./mvnw spring-boot:build-image -DskipTests
182
+
```
183
+
The `compose.yml` file will use this locally built image (`noobdevsam/spring-project-steganography-tool:v1`) when you run `docker compose up`.
0 commit comments