|
|
|
FROM anapsix/alpine-java:8_jdk
|
|
|
|
WORKDIR /tmp
|
|
|
|
RUN wget http://archive.apache.org/dist/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz
|
|
|
|
RUN tar -zxvf apache-maven-3.6.1-bin.tar.gz && rm apache-maven-3.6.1-bin.tar.gz
|
|
|
|
RUN mv apache-maven-3.6.1 /usr/lib/mvn
|
|
|
|
RUN chown -R root:root /usr/lib/mvn
|
|
|
|
RUN ln -s /usr/lib/mvn/bin/mvn /usr/bin/mvn
|
|
|
|
RUN wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
|
|
|
|
RUN tar -zxvf zookeeper-3.4.6.tar.gz
|
|
|
|
RUN mv zookeeper-3.4.6 /opt/zookeeper
|
|
|
|
RUN rm -rf zookeeper-3.4.6.tar.gz
|
|
|
|
RUN echo "export ZOOKEEPER_HOME=/opt/zookeeper" >>/etc/profile
|
|
|
|
RUN echo "export PATH=$PATH:$ZOOKEEPER_HOME/bin" >>/etc/profile
|
|
|
|
ADD conf/zoo.cfg /opt/zookeeper/conf/zoo.cfg
|
|
|
|
#RUN source /etc/profile
|
|
|
|
#RUN zkServer.sh start
|
|
|
|
RUN apk add --no-cache git npm nginx mariadb mariadb-client mariadb-server-utils pwgen
|
|
|
|
WORKDIR /opt
|
|
|
|
RUN git clone https://github.com/analysys/EasyScheduler.git
|
|
|
|
WORKDIR /opt/EasyScheduler
|
|
|
|
RUN mvn -U clean package assembly:assembly -Dmaven.test.skip=true
|
|
|
|
WORKDIR /opt/EasyScheduler/escheduler-ui
|
|
|
|
RUN npm install
|
|
|
|
RUN npm run build
|
|
|
|
RUN npm audit fix
|
|
|
|
RUN mv /opt/EasyScheduler/target/escheduler-1.0.0-SNAPSHOT /opt/easyscheduler
|
|
|
|
#configure mysql server https://github.com/yobasystems/alpine-mariadb/tree/master/alpine-mariadb-amd64
|
|
|
|
ADD conf/run.sh /scripts/run.sh
|
|
|
|
RUN mkdir /docker-entrypoint-initdb.d && \
|
|
|
|
mkdir /scripts/pre-exec.d && \
|
|
|
|
mkdir /scripts/pre-init.d && \
|
|
|
|
chmod -R 755 /scripts
|
|
|
|
RUN rm -rf /var/cache/apk/*
|
|
|
|
EXPOSE 8888
|
|
|
|
ENTRYPOINT ["/scripts/run.sh"]
|