diff --git a/captain.yml b/captain.yml index 22489d059ef6c710a9435a2dfe3b0d96ec592e76..a174331e5b33c709d8d728830d08ead20ffdd7bc 100644 --- a/captain.yml +++ b/captain.yml @@ -14,9 +14,11 @@ backend: image: hbpmip/portal-backend pre: - echo 'Building backend' - - cp -r $(pwd)/target $(pwd)/src/docker/run/target/ + - cp -r $(pwd)/config/ $(pwd)/src/docker/run/config/ + - cp -r $(pwd)/target/ $(pwd)/src/docker/run/target/ post: - rm -r $(pwd)/src/docker/run/target/ + - rm -r $(pwd)/src/docker/run/config/ - echo 'Finished building backend' test: - tests.sh \ No newline at end of file diff --git a/config/application.tmpl b/config/application.tmpl new file mode 100644 index 0000000000000000000000000000000000000000..ef4b18fb46b10b4187082b28ed1c92dd7c1f9fe3 --- /dev/null +++ b/config/application.tmpl @@ -0,0 +1,50 @@ +# Configuration for the portal running inside a Docker container + +spring: + datasource: + url: {{ .Env.DB_URL }} + username: {{ .Env.DB_USER }} + password: {{ .Env.DB_PASS }} + driver-class-name: org.postgresql.Driver + jpa: + hibernate: + dialect: org.hibernate.dialect.PostgreSQL9Dialect + resources: + chain: + enabled: true + +security: + enabled: false + +hbp: + client: + clientId: {{ .Env.CLIENT_ID }} + clientSecret: {{ .Env.CLIENT_SECRET }} + accessTokenUri: {{ .Env.TOKEN_URI }} + userAuthorizationUri: {{ .Env.AUTH_URI }} + tokenName: oauth_token + authenticationScheme: query + clientAuthenticationScheme: form + resource: + userInfoUri: {{ .Env.USER_INFO_URI }} + +logging: + level: + org.springframework.security: {{ .Env.LOGGING_LEVEL }} + +server: + contextPath: {{ .Env.CONTEXT_PATH }} + port: {{ .Env.PORT }} + use-forward-headers: true + session: + timeout: {{ .Env.SESSION_TIMEOUT }} + +workflow: + experimentUrl: {{ .Env.EXPERIMENT_URL }} + listMethodsUrl: {{ .Env.LIST_METHODS_URL }} + miningMipUrl: {{ .Env.ML_URL }} + miningExaremeUrl: {{ .Env.EXAREME_URL }} + +frontend: + redirect: + url: {{ .Env.FRONTEND_REDIRECT_URL }} diff --git a/docker-compose.yml b/docker-compose.yml index ca9461e4de83255ad5d6b13d3ecb1698e79bcd78..0f668a64548597567acfe0cafcb3212b4b1136fd 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -14,6 +14,25 @@ services: - "db" volumes: - ./config:/config + environment: + DB_URL: jdbc:postgresql://172.22.0.1:5432/postgres + DB_USER: postgres + DB_PASS: pass + CLIENT_ID: 996f97c5-a3ca-460e-b18b-00df3e2be89a + CLIENT_SECRET: aD0Tueb3KkNkcZqZgQbNyDWgnM95IfZ0xPCQ_6Z9dQNHXY00RIrnAD_m7sNJh1oofYSX8aHkl72MkwI0K626Ug + TOKEN_URI: https://services.humanbrainproject.eu/oidc/token + AUTH_URI: https://services.humanbrainproject.eu/oidc/authorize + USER_INFO_URI: https://services.humanbrainproject.eu/oidc/userinfo + LOGGING_LEVEL: DEBUG + CONTEXT_PATH: /services + PORT: 8080 + SESSION_TIMEOUT: 2592000 + EXPERIMENT_URL: http://172.22.0.1:8087/experiment + LIST_METHODS_URL: http://172.22.0.1:8087/list-methods + ML_URL: http://172.22.0.1:8087/mining + EXAREME_URL: http://hbps2.chuv.ch:9090/mining/query + FRONTEND_REDIRECT_URL: http://frontend/home + db: container_name: db image: postgres:9.5.3 diff --git a/src/docker/run/Dockerfile b/src/docker/run/Dockerfile index 55f78f0aea243a722b90ac0b6c662ab7aa75e4f2..f9c7d30b090aac13ba320651e1d6c97fe39d5662 100644 --- a/src/docker/run/Dockerfile +++ b/src/docker/run/Dockerfile @@ -1,6 +1,12 @@ FROM java:openjdk-8u92-jdk-alpine -VOLUME /config - COPY ./target/backend-services-DOCKER_BUILD.jar backend.jar -CMD ["java", "-jar", "backend.jar"] + +RUN apk add --update ca-certificates wget && rm -rf /var/cache/apk/* /tmp/* && update-ca-certificates +RUN wget https://github.com/jwilder/dockerize/releases/download/v0.2.0/dockerize-linux-amd64-v0.2.0.tar.gz +RUN tar -C /usr/local/bin -xvzf dockerize-linux-amd64-v0.2.0.tar.gz + +CMD mkdir /config +ADD ./config/application.tmpl /config/application.tmpl + +CMD dockerize -template /config/application.tmpl:/config/application.yml java -jar backend.jar diff --git a/src/main/java/org/hbp/mip/MIPApplication.java b/src/main/java/org/hbp/mip/MIPApplication.java index 4814eb9e11f657e89133218e9d21622ad215eaf8..51fd6f3ea36b5e273d70adc99e09659dd8e983b9 100644 --- a/src/main/java/org/hbp/mip/MIPApplication.java +++ b/src/main/java/org/hbp/mip/MIPApplication.java @@ -1,6 +1,5 @@ /** * Created by mirco on 04.12.15. - * Based on gregturn code at : 'https://github.com/spring-guides/tut-spring-boot-oauth2'. */ package org.hbp.mip;