Skip to content

Commit 664ee3b

Browse files
committed
refactor 4.2.x
Refactor Docker build for 4.2.0, 4.2.1 and 4.2.2 - all built from postgres:10 base image and use simpler format
1 parent 830b512 commit 664ee3b

File tree

6 files changed

+410
-501
lines changed

6 files changed

+410
-501
lines changed

4.2.0/Dockerfile

Lines changed: 50 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM postgres:9.6
1+
FROM postgres:10
22
MAINTAINER Michael J. Stealey <michael.j.stealey@gmail.com>
33

44
# set user/group IDs for irods account
@@ -7,56 +7,54 @@ RUN groupadd -r irods --gid=998 \
77
&& mv /docker-entrypoint.sh /postgres-docker-entrypoint.sh
88

99
# install iRODS v4.2.0
10-
RUN apt-get update && apt-get install -y \
11-
wget \
12-
apt-transport-https \
13-
sudo \
14-
jq \
15-
&& wget -qO - https://packages.irods.org/irods-signing-key.asc | apt-key add - \
16-
&& echo "deb [arch=amd64] https://packages.irods.org/apt/ trusty main" \
17-
> /etc/apt/sources.list.d/renci-irods.list \
18-
&& apt-get update && apt-get install -y \
19-
irods-database-plugin-postgres=4.2.0 \
20-
irods-externals-avro1.7.7-0 \
21-
irods-externals-boost1.60.0-0 \
22-
irods-externals-clang-runtime3.8-0 \
23-
irods-externals-jansson2.7-0 \
24-
irods-externals-libarchive3.1.2-0 \
25-
irods-externals-zeromq4-14.1.3-0 \
26-
irods-icommands=4.2.0 \
27-
irods-runtime=4.2.0 \
28-
irods-server=4.2.0
10+
RUN echo "deb http://ftp.debian.org/debian jessie-backports main" \
11+
> /etc/apt/sources.list.d/jessie-backports.list \
12+
&& apt-get update && apt-get install -y \
13+
wget \
14+
gnupg2 \
15+
apt-transport-https \
16+
sudo \
17+
jq \
18+
libxml2 \
19+
moreutils \
20+
&& wget -qO - https://packages.irods.org/irods-signing-key.asc | apt-key add - \
21+
&& echo "deb [arch=amd64] https://packages.irods.org/apt/ trusty main" \
22+
> /etc/apt/sources.list.d/renci-irods.list \
23+
&& apt-get update && apt-get install -y \
24+
irods-database-plugin-postgres=4.2.0 \
25+
irods-icommands=4.2.0 \
26+
irods-runtime=4.2.0 \
27+
irods-server=4.2.0
2928

30-
# default iRODS env
31-
ENV IRODS_SERVICE_ACCOUNT_NAME=irods
32-
ENV IRODS_SERVICE_ACCOUNT_GROUP=irods
33-
# 1. provider, 2. consumer
34-
ENV IRODS_SERVER_ROLE=1
35-
# 1. PostgreSQL ANSI, 2. PostgreSQL Unicode
36-
ENV ODBC_DRIVER_FOR_POSTGRES=2
37-
ENV IRODS_DATABASE_SERVER_HOSTNAME=localhost
38-
ENV IRODS_DATABASE_SERVER_PORT=5432
39-
ENV IRODS_DATABASE_NAME=ICAT
40-
ENV IRODS_DATABASE_USER_NAME=irods
41-
ENV IRODS_DATABASE_PASSWORD=temppassword
42-
ENV IRODS_DATABASE_USER_PASSWORD_SALT=tempsalt
43-
ENV IRODS_ZONE_NAME=tempZone
44-
ENV IRODS_PORT=1247
45-
ENV IRODS_PORT_RANGE_BEGIN=20000
46-
ENV IRODS_PORT_RANGE_END=20199
47-
ENV IRODS_CONTROL_PLANE_PORT=1248
48-
ENV IRODS_SCHEMA_VALIDATION=file:///var/lib/irods/configuration_schemas
49-
ENV IRODS_SERVER_ADMINISTRATOR_USER_NAME=rods
50-
ENV IRODS_SERVER_ZONE_KEY=TEMPORARY_zone_key
51-
ENV IRODS_SERVER_NEGOTIATION_KEY=TEMPORARY_32byte_negotiation_key
52-
ENV IRODS_CONTROL_PLANE_KEY=TEMPORARY__32byte_ctrl_plane_key
53-
ENV IRODS_SERVER_ADMINISTRATOR_PASSWORD=rods
54-
ENV IRODS_VAULT_DIRECTORY=/var/lib/irods/iRODS/Vault
55-
# UID / GID settings
56-
ENV UID_POSTGRES=999
57-
ENV GID_POSTGRES=999
58-
ENV UID_IRODS=998
59-
ENV GID_IRODS=998
29+
# default iRODS and PostgreSQL environment variables
30+
ENV IRODS_SERVICE_ACCOUNT_NAME=irods \
31+
IRODS_SERVICE_ACCOUNT_GROUP=irods \
32+
IRODS_SERVER_ROLE=1 \
33+
ODBC_DRIVER_FOR_POSTGRES=2 \
34+
IRODS_DATABASE_SERVER_HOSTNAME=localhost \
35+
IRODS_DATABASE_SERVER_PORT=5432 \
36+
IRODS_DATABASE_NAME=ICAT \
37+
IRODS_DATABASE_USER_NAME=irods \
38+
IRODS_DATABASE_PASSWORD=temppassword \
39+
IRODS_DATABASE_USER_PASSWORD_SALT=tempsalt \
40+
IRODS_ZONE_NAME=tempZone \
41+
IRODS_PORT=1247 \
42+
IRODS_PORT_RANGE_BEGIN=20000 \
43+
IRODS_PORT_RANGE_END=20199 \
44+
IRODS_CONTROL_PLANE_PORT=1248 \
45+
IRODS_SCHEMA_VALIDATION=file:///var/lib/irods/configuration_schemas \
46+
IRODS_SERVER_ADMINISTRATOR_USER_NAME=rods \
47+
IRODS_SERVER_ZONE_KEY=TEMPORARY_zone_key \
48+
IRODS_SERVER_NEGOTIATION_KEY=TEMPORARY_32byte_negotiation_key \
49+
IRODS_CONTROL_PLANE_KEY=TEMPORARY__32byte_ctrl_plane_key \
50+
IRODS_SERVER_ADMINISTRATOR_PASSWORD=rods \
51+
IRODS_VAULT_DIRECTORY=/var/lib/irods/iRODS/Vault \
52+
UID_POSTGRES=999 \
53+
GID_POSTGRES=999 \
54+
UID_IRODS=998 \
55+
GID_IRODS=998 \
56+
POSTGRES_USER=postgres \
57+
POSTGRES_PASSWORD=postgres
6058

6159
# create postgresql.tar.gz
6260
RUN cd /var/lib/postgresql/data \
@@ -72,7 +70,6 @@ COPY ./docker-entrypoint.sh /irods-docker-entrypoint.sh
7270
VOLUME /var/lib/irods /etc/irods /var/lib/postgresql/data
7371

7472
EXPOSE $IRODS_PORT $IRODS_CONTROL_PLANE_PORT $IRODS_PORT_RANGE_BEGIN-$IRODS_PORT_RANGE_END
75-
ENTRYPOINT ["/irods-docker-entrypoint.sh"]
76-
WORKDIR "/var/lib/irods"
7773

78-
CMD ["-i", "run_irods"]
74+
WORKDIR /var/lib/irods/
75+
ENTRYPOINT ["/irods-docker-entrypoint.sh"]

0 commit comments

Comments
 (0)