config per debug in docker

This commit is contained in:
Alfredo Oliviero 2024-02-12 17:43:30 +01:00
parent 8650ed6451
commit 182f890e9c
6 changed files with 58 additions and 23 deletions

16
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,16 @@
{
// Usare IntelliSense per informazioni sui possibili attributi.
// Al passaggio del mouse vengono visualizzate le descrizioni degli attributi esistenti.
// Per altre informazioni, visitare: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "Debug (Attach)",
"projectName": "identity-manager",
"request": "attach",
"hostName": "localhost",
"port": 4954
}
]
}

View File

@ -12,8 +12,8 @@ COPY ./target/identity-manager.war /usr/local/tomcat/webapps/
COPY ./docker/logback.xml /etc/ COPY ./docker/logback.xml /etc/
COPY ./docker/container.ini /etc/ COPY ./docker/container.ini /etc/
# RUN unzip /tomcat/webapps/identity-manager.war -d /tomcat/webapps/identity-manager # RUN unzip /tomcat/webapps/identity-manager.war -d /tomcat/webapps/identity-manager
RUN unzip /usr/local/tomcat/webapps/identity-manager.war -d /usr/local/tomcat/webapps/identity-manager # RUN unzip /usr/local/tomcat/webapps/identity-manager.war -d /usr/local/tomcat/webapps/identity-manager
RUN rm /usr/local/tomcat/webapps/identity-manager.war # RUN rm /usr/local/tomcat/webapps/identity-manager.war
EXPOSE 8080 EXPOSE 8080
# COPY ./docker/storage-settings.properties /tomcat/webapps/identity-manager/WEB-INF/classes/ # COPY ./docker/storage-settings.properties /tomcat/webapps/identity-manager/WEB-INF/classes/
# RUN sed -i "s/{{adminId}}/$REPOUSER/g; s/{{adminPwd}}/$REPOPWD/g" /tomcat/webapps/storagehub/WEB-INF/web.xml # RUN sed -i "s/{{adminId}}/$REPOUSER/g; s/{{adminPwd}}/$REPOPWD/g" /tomcat/webapps/storagehub/WEB-INF/web.xml

3
deploy.sh Executable file
View File

@ -0,0 +1,3 @@
mvn clean package
docker compose up -d --build --force-recreate

View File

@ -2,7 +2,18 @@ version: '3.7'
services: services:
identity-manager: identity-manager:
build: . build: .
volumes:
# montiamo "target" sul percorso delle applicazioni web di Tomcat, permettendo così aggiornamenti automatici del WAR senza necessità di ricostruire il container
- ./target:/usr/local/tomcat/webapps/
ports: ports:
- '8080:8080' - 8080:8080
- 4954:4954
environment:
- ADMINISTRATION_PORT_ENABLED=true
- DOMAIN_NAME=docker_domain
- JPDA_OPTS="-agentlib:jdwp=transport=dt_socket,address=0.0.0.0:4954,server=y,suspend=n"
- JPDA_ADDRESS=*:4954

View File

@ -1,11 +1,11 @@
mvn clean package mvn clean package
docker build -t idm . # docker build -t idm .
docker compose up -d --build --force-recreate docker compose up -d --build --force-recreate
docker run -it -d -p 8080:8080 --name idm idm # senza composer
docker run -it -d -p 8080:8080 --entrypoint=/bin/bash --name idm idm #docker run -it -d -p 8080:8080 --name idm idm
docker compose up -d
docker compose up -d --build --force-recreate
# controllare servizio
http://localhost:8080/identity-manager/gcube/resource/health

33
pom.xml
View File

@ -52,15 +52,6 @@
<groupId>org.gcube.common</groupId> <groupId>org.gcube.common</groupId>
<artifactId>common-security</artifactId> <artifactId>common-security</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.gcube.common</groupId>
<artifactId>keycloak-client</artifactId>
</dependency>
<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-admin-client</artifactId>
<version>21.0.1</version>
</dependency>
<dependency> <dependency>
<groupId>org.glassfish.jersey.media</groupId> <groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-multipart</artifactId> <artifactId>jersey-media-multipart</artifactId>
@ -73,28 +64,42 @@
<groupId>javax.ws.rs</groupId> <groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId> <artifactId>javax.ws.rs-api</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.gcube.core</groupId> <groupId>org.gcube.core</groupId>
<artifactId>common-smartgears-app</artifactId> <artifactId>common-smartgears-app</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.gcube.core</groupId> <groupId>org.gcube.core</groupId>
<artifactId>common-smartgears</artifactId> <artifactId>common-smartgears</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.gcube.core</groupId> <groupId>org.gcube.core</groupId>
<artifactId>common-scope</artifactId> <artifactId>common-scope</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.gcube.core</groupId> <groupId>org.gcube.core</groupId>
<artifactId>common-scope-maps</artifactId> <artifactId>common-scope-maps</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.gcube.common</groupId>
<artifactId>keycloak-client</artifactId>
</dependency>
<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-admin-client</artifactId>
<version>21.0.1</version>
</dependency>
<dependency> <dependency>
<groupId>org.gcube.core</groupId> <groupId>org.gcube.core</groupId>
<artifactId>common-encryption</artifactId> <artifactId>common-encryption</artifactId>