Skip to content

Commit

Permalink
Showing 20 changed files with 379 additions and 127 deletions.
1 change: 1 addition & 0 deletions .gitignore
@@ -8,3 +8,4 @@ bin/start.sh
bin/stop.sh
bin/test.sh
/.project
**/*~
35 changes: 9 additions & 26 deletions Dockerfile
@@ -5,15 +5,16 @@ LABEL author="tier-packaging@internet2.edu <tier-packaging@internet2.edu>" \
ImageType="Grouper" \
ImageName=$imagename \
ImageOS=centos7

ARG GROUPER_CONTAINER_VERSION

ENV GROUPER_VERSION=2.6.15 \
ENV GROUPER_VERSION=2.6.16 \
GROUPER_CONTAINER_VERSION=$GROUPER_CONTAINER_VERSION \
JAVA_HOME=/usr/lib/jvm/java-1.8.0-amazon-corretto \
PATH=$PATH:$JAVA_HOME/bin \
GROUPER_HOME=/opt/grouper/grouperWebapp/WEB-INF

# net-tools curl mlocate strace telnet man vim rsyslog cron httpd mod_ssl cronie
RUN yum update -y \
&& yum install -y logrotate python3-pip rsync sudo patch supervisor wget tar unzip dos2unix file \
&& pip3 install --upgrade setuptools \
@@ -24,35 +25,20 @@ RUN yum update -y \

# Install Corretto Java JDK
#Corretto download page: https://docs.aws.amazon.com/corretto/latest/corretto-8-ug/downloads-list.html

ARG CORRETTO_URL_PERM=https://corretto.aws/downloads/latest/amazon-corretto-8-x64-linux-jdk.rpm
ARG CORRETTO_RPM=amazon-corretto-8-x64-linux-jdk.rpm

# if we are doing layers for caching while developing the container, can call run from here and not from containreDockerfileInstall.sh...
#COPY container_files/containerDockerfileInstallJava.sh /opt/container_files/
#COPY container_files/morphString.properties /opt/container_files/
#COPY container_files/grouper.installer.properties /opt/container_files/
#COPY container_files/containerDockerfileInstallGrouper.sh /opt/container_files/

#RUN cd /tmp \
# && chmod +x /opt/container_files/*.sh \
# && /opt/container_files/containerDockerfileInstallDos2unix.sh /opt/container_files \
# && /opt/container_files/containerDockerfileInstallJava.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION \
# && /opt/container_files/containerDockerfileInstallGrouper.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION

# real copy command (if not caching), uncomment this and change comments of COPY above to work on install script
COPY container_files/ /opt/container_files/

#RUN cd /tmp \
# && chmod +x /opt/container_files/*.sh \
# && /opt/container_files/containerDockerfileInstallDos2unix.sh /opt/container_files \
# && /opt/container_files/containerDockerfileInstall.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION

RUN cd /tmp \
&& chmod +x /opt/container_files/*.sh \
&& /opt/container_files/containerDockerfileInstallDos2unix.sh /opt/container_files \
&& /opt/container_files/containerDockerfileInstallJava.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION \
&& /opt/container_files/containerDockerfileInstallGrouper.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION \
&& /opt/container_files/containerDockerfileInstall.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION
&& chmod +x /opt/container_files/docker-build-bin/*.sh \
&& /opt/container_files/docker-build-bin/containerDockerfileInstallDos2unix.sh /opt/container_files \
&& /opt/container_files/docker-build-bin/containerDockerfileInstallJava.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION \
&& /opt/container_files/docker-build-bin/containerDockerfileInstallGrouper.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION \
&& /opt/container_files/docker-build-bin/containerDockerfileInstall.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION


# testing container
@@ -66,6 +52,3 @@ EXPOSE 80 443
HEALTHCHECK NONE

ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
## uncomment ping, and comment out other entrypoint to just have a simple runnable container
#ENTRYPOINT ["ping"]
#CMD ["google.com"]
76 changes: 76 additions & 0 deletions Dockerfile2
@@ -0,0 +1,76 @@
FROM centos:centos7

LABEL author="tier-packaging@internet2.edu <tier-packaging@internet2.edu>" \
Vendor="TIER" \
ImageType="Grouper" \
ImageName=$imagename \
ImageOS=centos7

ARG GROUPER_CONTAINER_VERSION

ENV GROUPER_VERSION=2.6.16 \
GROUPER_CONTAINER_VERSION=$GROUPER_CONTAINER_VERSION \
JAVA_HOME=/usr/lib/jvm/java-1.8.0-amazon-corretto \
PATH=$PATH:$JAVA_HOME/bin \
GROUPER_HOME=/opt/grouper/grouperWebapp/WEB-INF

RUN ln -sf /usr/share/zoneinfo/UTC /etc/localtime \
&& echo "NETWORKING=yes" > /etc/sysconfig/network
RUN rm -fr /var/cache/yum/* && yum clean all && yum -y install --setopt=tsflags=nodocs epel-release && yum -y update && \
yum -y install net-tools wget curl tar unzip mlocate logrotate strace telnet man vim rsyslog cron httpd mod_ssl dos2unix cronie supervisor && \
yum clean all

RUN yum update -y \
&& yum install -y logrotate python3-pip rsync sudo patch supervisor wget tar unzip dos2unix file \
&& pip3 install --upgrade setuptools \
&& yum clean -y all \
&& groupadd -r tomcat \
&& useradd -r -m -s /sbin/nologin -g tomcat tomcat \
&& mkdir -p /opt/container_files

# Install Corretto Java JDK
#Corretto download page: https://docs.aws.amazon.com/corretto/latest/corretto-8-ug/downloads-list.html

#ARG CORRETTO_URL_PERM=https://corretto.aws/downloads/latest/amazon-corretto-8-x64-linux-jdk.rpm
#ARG CORRETTO_RPM=amazon-corretto-8-x64-linux-jdk.rpm
ARG CORRETTO_URL_PERM=https://corretto.aws/downloads/latest/amazon-corretto-8-aarch64-linux-jdk.rpm
ARG CORRETTO_RPM=amazon-corretto-8-aarch64-linux-jdk.rpm


COPY container_files/docker-build-bin /opt/container_files/docker-build-bin/
COPY container_files/morphString.properties /opt/container_files/
COPY container_files/grouper.installer.properties /opt/container_files/
RUN mkdir /opt/container_files/java-corretto
COPY container_files/java-corretto/corretto-signing-key.pub /opt/container_files/java-corretto
COPY container_files/tier-support /opt/container_files/tier-support/
RUN cd /tmp \
&& chmod +x /opt/container_files/docker-build-bin/*.sh \
&& /opt/container_files/docker-build-bin/containerDockerfileInstallDos2unix.sh /opt/container_files \
&& /opt/container_files/docker-build-bin/containerDockerfileInstallJava.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION \
&& /opt/container_files/docker-build-bin/containerDockerfileInstallGrouper.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION


# real copy command (if not caching), uncomment this and change comments of COPY above to work on install script
COPY container_files/ /opt/container_files/

RUN cd /tmp \
&& /opt/container_files/docker-build-bin/containerDockerfileInstallDos2unix.sh /opt/container_files \
&& /opt/container_files/docker-build-bin/containerDockerfileInstall.sh $CORRETTO_URL_PERM $CORRETTO_RPM $JAVA_HOME $GROUPER_VERSION


# testing container
# see output with docker build . --tag my:grouper
# DOCKER_BUILDKIT=0 docker build --progress=plain -t mygrouper .
# docker run --detach --name mygrouper mygrouper:latest
# docker exec -it mygrouper bash

WORKDIR /opt/grouper/grouperWebapp/WEB-INF/
EXPOSE 80 443
HEALTHCHECK NONE

#ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]

# LOCAL start uncomment ping, and comment out other entrypoint to just have a simple runnable container
ENTRYPOINT ["ping"]
CMD ["google.com"]
# LOCAL end
3 changes: 3 additions & 0 deletions build.sh
@@ -0,0 +1,3 @@
#!/bin/bash

docker build -t my-grouper .
3 changes: 3 additions & 0 deletions build2.sh
@@ -0,0 +1,3 @@
#!/bin/bash

docker build -t my-grouper -f Dockerfile2 .

0 comments on commit 2b8d75b

Please sign in to comment.