Skip to content

Commit 506ca3d

Browse files
committed
Switch to node user
1 parent 8008a45 commit 506ca3d

6 files changed

+23
-38
lines changed

Dockerfile

Lines changed: 9 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,24 @@
11
# docker build -t ohif/dicomweb-server:latest .
22
# docker run -p 5985:5985 ohif/dicomweb-server:latest
33
# If you want to use PouchDB in this container, add -p 5984:5984
4-
# docker run -p 5985:5985 -p 5984:5984 -e USE_POUCHDB=true ohif/dicomweb-server:latest
4+
# docker run -p 5985:5985 -p 5984:5984 -e USE_POUCHDB=true -e DB_SERVER=http://0.0.0.0 ohif/dicomweb-server:latest
55
FROM node:13.10.1-slim
66

77
# Install prerequisites
88
RUN apt-get update
9-
RUN apt-get -y install git-core \
10-
supervisor
9+
RUN apt-get -y install supervisor
1110

12-
# Grab Source
13-
RUN mkdir /usr/src/app
14-
WORKDIR /usr/src/app
15-
ADD . /usr/src/app
11+
USER node
12+
RUN mkdir -p /home/node/app
13+
RUN mkdir -p /home/node/log/supervisor
14+
WORKDIR /home/node/app
15+
ADD . /home/node/app
1616

1717
# Restore deps
1818
RUN npm ci
19-
RUN npm install pouchdb-server
20-
21-
# Override config
22-
COPY ./dockersupport/server-config.js config/development.js
23-
24-
# Copy the scripts to run dicomweb-server and PouchDB
25-
COPY ./dockersupport/dicomweb-server-service.sh /usr/src/dicomweb-server-service.sh
26-
RUN chmod 777 /usr/src/dicomweb-server-service.sh
27-
28-
COPY ./dockersupport/conditionally-start-pouchdb.sh /usr/src/conditionally-start-pouchdb.sh
29-
RUN chmod 777 /usr/src/conditionally-start-pouchdb.sh
19+
RUN npm install [email protected]
3020

3121
ENV USE_POUCHDB=false
3222

33-
# Setup Supervisord
34-
COPY ./dockersupport/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
35-
3623
EXPOSE 5984 5985
37-
CMD ["supervisord", "-n"]
24+
CMD ["supervisord", "-n", "-c", "/home/node/app/dockersupport/supervisord.conf"]

docker-compose.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ services:
1515
hostname: dicomweb-server
1616
environment:
1717
- PORT=5984
18+
- DB_SERVER=http://couchdb
1819
ports:
1920
- '5985:5985'
2021
depends_on:
@@ -29,6 +30,9 @@ services:
2930
hostname: couchdb
3031
volumes:
3132
- ./couchdb-data:/opt/couchdb/data
33+
environment:
34+
- COUCHDB_USER=admin
35+
- COUCHDB_PASSWORD=password
3236
ports:
3337
- '5984:5984'
3438
restart: unless-stopped

dockersupport/conditionally-start-pouchdb.sh

100644100755
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
if [ $USE_POUCHDB = "true" ]
44
then
55
echo "USE_POUCHDB is true, starting PouchDB service"
6-
/usr/src/app/node_modules/pouchdb-server/bin/pouchdb-server --in-memory --host 0.0.0.0
6+
/home/node/app/node_modules/pouchdb-server/bin/pouchdb-server --in-memory --host 0.0.0.0
77
else
88
exit 0
99
fi

dockersupport/dicomweb-server-service.sh

100644100755
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
#!/bin/bash
2-
cd /usr/src/app
2+
cd /home/node/app
33
npm start

dockersupport/server-config.js

Lines changed: 0 additions & 8 deletions
This file was deleted.

dockersupport/supervisord.conf

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
[supervisord]
2+
user=node
3+
logfile=/home/node/log/supervisor/supervisord.log
24
nodaemon=true
35

46
[program:pouchdb]
5-
command=bash /usr/src/conditionally-start-pouchdb.sh
6-
stdout_logfile=/var/log/supervisor/%(program_name)s.log
7-
stderr_logfile=/var/log/supervisor/%(program_name)s.log
7+
command=bash /home/node/app/dockersupport/conditionally-start-pouchdb.sh
8+
stdout_logfile=/home/node/log/supervisor/%(program_name)s.log
9+
stderr_logfile=/home/node/log/supervisor/%(program_name)s.log
810
autorestart=true
911

1012
[program:dicomweb-server]
11-
command=bash /usr/src/dicomweb-server-service.sh
12-
stdout_logfile=/var/log/supervisor/%(program_name)s.log
13-
stderr_logfile=/var/log/supervisor/%(program_name)s.log
13+
command=bash /home/node/app/dockersupport/dicomweb-server-service.sh
14+
stdout_logfile=/home/node/log/supervisor/%(program_name)s.log
15+
stderr_logfile=/home/node/log/supervisor/%(program_name)s.log
1416
autorestart=true

0 commit comments

Comments
 (0)