Skip to content

Commit

Permalink
Merge pull request #38 from NrgXnat/issues/github-20
Browse files Browse the repository at this point in the history
Setting POSTGRES_PASSWORD with default, introduced other env vars, closes #20, closes #28.
  • Loading branch information
Rick Herrick committed Jun 23, 2020
2 parents bbb948e + 71912ff commit d96eaeb
Show file tree
Hide file tree
Showing 5 changed files with 53 additions and 32 deletions.
20 changes: 20 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
XNAT_VER=1.7.6
SMTP_ENABLED=false
SMTP_HOSTNAME=fake.fake
SMTP_PORT=
SMTP_AUTH=
SMTP_USERNAME=
SMTP_PASSWORD=
XNAT_DATASOURCE_ADMIN_PASSWORD=xnat123456789abcdef0
XNAT_DATASOURCE_DRIVER=org.postgresql.Driver
XNAT_DATASOURCE_USERNAME=xnat
XNAT_DATASOURCE_PASSWORD=xnat
XNAT_DATASOURCE_URL=jdbc:postgresql://xnat-db/xnat
XNAT_HIBERNATE_DIALECT=org.hibernate.dialect.PostgreSQL9Dialect
XNAT_ACTIVEMQ_URL=tcp://xnat-activemq:61616
XNAT_ACTIVEMQ_USERNAME=write
XNAT_ACTIVEMQ_PASSWORD=password
TOMCAT_XNAT_FOLDER=ROOT
XNAT_ROOT=/data/xnat
XNAT_HOME=/data/xnat/home
XNAT_EMAIL=harmitage@miskatonic.edu
6 changes: 4 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Created by .ignore support plugin (hsz.mobi)
*.swp
*.swo
postgres-data*
xnat-data*
*-data/
xnat/plugins
*.log
.gradle/
manifest.json
22 changes: 12 additions & 10 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@ services:
build:
context: ./xnat
args:
XNAT_VER: '1.7.6'
XNAT_DATASOURCE_DRIVER: 'org.postgresql.Driver'
XNAT_DATASOURCE_URL: 'jdbc:postgresql://xnat-db/xnat'
XNAT_DATASOURCE_USERNAME: 'xnat'
XNAT_DATASOURCE_PASSWORD: 'xnat'
XNAT_HIBERNATE_DIALECT: 'org.hibernate.dialect.PostgreSQL9Dialect'
TOMCAT_XNAT_FOLDER: ROOT
XNAT_ROOT: /data/xnat
XNAT_HOME: /data/xnat/home
XNAT_VER: ${XNAT_VER}
XNAT_DATASOURCE_DRIVER: ${XNAT_DATASOURCE_DRIVER}
XNAT_DATASOURCE_URL: ${XNAT_DATASOURCE_URL}
XNAT_DATASOURCE_USERNAME: ${XNAT_DATASOURCE_USERNAME}
XNAT_DATASOURCE_PASSWORD: ${XNAT_DATASOURCE_PASSWORD}
XNAT_HIBERNATE_DIALECT: ${XNAT_HIBERNATE_DIALECT}
TOMCAT_XNAT_FOLDER: ${TOMCAT_XNAT_FOLDER}
XNAT_ROOT: ${XNAT_ROOT}
XNAT_HOME: ${XNAT_HOME}
ports:
- "8081:8080"
- "8080:8080"
- "8000:8000"
volumes:
- ./xnat/plugins:/data/xnat/home/plugins
Expand All @@ -34,6 +34,8 @@ services:
- "5432"
volumes:
- ./postgres-data:/var/lib/postgresql/data
environment:
POSTGRES_PASSWORD: ${XNAT_DATASOURCE_ADMIN_PASSWORD}

xnat-nginx:
build: ./nginx
Expand Down
2 changes: 1 addition & 1 deletion postgres/XNAT.sql
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
CREATE USER xnat NOCREATEDB;
CREATE USER xnat NOCREATEDB;
CREATE DATABASE xnat OWNER xnat;
ALTER USER xnat WITH PASSWORD 'xnat';
35 changes: 16 additions & 19 deletions xnat/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
FROM tomcat:7-jre8-alpine
MAINTAINER Matt Kelsey <kelseym@wustl.edu>

ARG XNAT_VER
ARG XNAT_VER=1.7.6
ARG XNAT_ROOT=/data/xnat
ARG XNAT_HOME=/data/xnat/home
ARG XNAT_DATASOURCE_DRIVER=org.postgresql.Driver
Expand All @@ -10,17 +10,15 @@ ARG XNAT_DATASOURCE_USERNAME=xnat
ARG XNAT_DATASOURCE_PASSWORD=xnat
ARG XNAT_HIBERNATE_DIALECT=org.hibernate.dialect.PostgreSQL9Dialect
ARG TOMCAT_XNAT_FOLDER=ROOT
ARG TOMCAT_XNAT_FOLDER_PATH=${CATALINA_HOME}/webapps/${TOMCAT_XNAT_FOLDER}

ADD make-xnat-config.sh /usr/local/bin/make-xnat-config.sh
ADD wait-for-postgres.sh /usr/local/bin/wait-for-postgres.sh

RUN apk add --no-cache \
postgresql-client \
wget \
&& \
rm -rf $CATALINA_HOME/webapps/* && \
mkdir -p \
$CATALINA_HOME/webapps/${TOMCAT_XNAT_FOLDER} \
RUN apk add --no-cache postgresql-client wget
RUN rm -rf ${CATALINA_HOME}/webapps/*
RUN mkdir -p \
${TOMCAT_XNAT_FOLDER_PATH} \
${XNAT_HOME}/config \
${XNAT_HOME}/logs \
${XNAT_HOME}/plugins \
Expand All @@ -30,18 +28,17 @@ RUN apk add --no-cache \
${XNAT_ROOT}/cache \
${XNAT_ROOT}/ftp \
${XNAT_ROOT}/pipeline \
${XNAT_ROOT}/prearchive \
&& \
/usr/local/bin/make-xnat-config.sh && \
rm /usr/local/bin/make-xnat-config.sh && \
cd $CATALINA_HOME/webapps/ && \
wget https://api.bitbucket.org/2.0/repositories/xnatdev/xnat-web/downloads/xnat-web-${XNAT_VER}.war && \
cd ${TOMCAT_XNAT_FOLDER} && \
unzip -o ../xnat-web-${XNAT_VER}.war && \
rm -f ../xnat-web-${XNAT_VER}.war && \
apk del wget
${XNAT_ROOT}/prearchive
RUN /usr/local/bin/make-xnat-config.sh
RUN rm /usr/local/bin/make-xnat-config.sh
RUN wget --no-verbose --output-document=/tmp/xnat-web-${XNAT_VER}.war https://api.bitbucket.org/2.0/repositories/xnatdev/xnat-web/downloads/xnat-web-${XNAT_VER}.war
RUN unzip -o -d ${TOMCAT_XNAT_FOLDER_PATH} /tmp/xnat-web-${XNAT_VER}.war
RUN rm -f /tmp/xnat-web-${XNAT_VER}.war
RUN apk del wget

EXPOSE 8080
ENV XNAT_HOME=${XNAT_HOME} XNAT_DATASOURCE_USERNAME=${XNAT_DATASOURCE_USERNAME}

ENV XNAT_HOME=${XNAT_HOME} XNAT_DATASOURCE_USERNAME=${XNAT_DATASOURCE_USERNAME} PGPASSWORD=${XNAT_DATASOURCE_PASSWORD}

CMD ["wait-for-postgres.sh", "/usr/local/tomcat/bin/catalina.sh", "run"]

0 comments on commit d96eaeb

Please sign in to comment.