From 7758b2240f350164bacbfa299c735856e61a4a93 Mon Sep 17 00:00:00 2001 From: kev Date: Fri, 27 Sep 2019 17:54:30 +0800 Subject: [PATCH] add apacheds --- README.md | 1 + apacheds/Dockerfile | 40 +++++++++++++++++++++++++++++++++++ apacheds/README.md | 13 ++++++++++++ apacheds/docker-compose.yml | 8 +++++++ apacheds/docker-entrypoint.sh | 12 +++++++++++ 5 files changed, 74 insertions(+) create mode 100644 apacheds/Dockerfile create mode 100644 apacheds/README.md create mode 100644 apacheds/docker-compose.yml create mode 100755 apacheds/docker-entrypoint.sh diff --git a/README.md b/README.md index 506474f..d4b03e0 100644 --- a/README.md +++ b/README.md @@ -70,6 +70,7 @@ A collection of delicious docker recipes. ## Daemon - [x] alpine-arm :+1: +- [x] apacheds - [x] aria2 :+1: - [x] audiowaveform - [x] cadvisor diff --git a/apacheds/Dockerfile b/apacheds/Dockerfile new file mode 100644 index 0000000..30d5e44 --- /dev/null +++ b/apacheds/Dockerfile @@ -0,0 +1,40 @@ +# +# Dockerfile for apacheds +# + +FROM debian:buster +MAINTAINER EasyPi Software Foundation + +ENV GOSU_VERSION=1.11 +ENV GOSU_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VERSION}/gosu-amd64 + +ENV APACHEDS_VERSION=2.0.0.AM25 +ENV APACHEDS_FILE=apacheds-${APACHEDS_VERSION}-amd64.deb +ENV APACHEDS_URL=http://mirrors.advancedhosters.com/apache/directory/apacheds/dist/${APACHEDS_VERSION}/${APACHEDS_FILE} +ENV APACHEDS_USER=apacheds +ENV APACHEDS_GROUP=apacheds +ENV APACHEDS_DATA=/var/lib/apacheds +ENV APACHEDS_INSTANCE=default +ENV APACHEDS_INSTANCE_DIR=${APACHEDS_DATA}/${APACHEDS_INSTANCE} + +RUN set -xe \ + && apt update \ + && apt install -y \ + apt-utils \ + curl \ + ldap-utils \ + openjdk-11-jre-headless \ + procps \ + && curl -sSL ${GOSU_URL} > /usr/local/bin/gosu \ + && chmod +x /usr/local/bin/gosu \ + && gosu nobody true \ + && curl -sSL ${APACHEDS_URL} > ${APACHEDS_FILE} \ + && dpkg -i ${APACHEDS_FILE} \ + && sed -i "/INSTANCES_DIRECTORY/s/-${APACHEDS_VERSION}//" /opt/apacheds-${APACHEDS_VERSION}/bin/apacheds \ + && rm -rf ${APACHEDS_FILE} /var/lib/apt/lists/* + +EXPOSE 10389 10636 + +COPY docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh + +ENTRYPOINT ["docker-entrypoint.sh"] diff --git a/apacheds/README.md b/apacheds/README.md new file mode 100644 index 0000000..db4635f --- /dev/null +++ b/apacheds/README.md @@ -0,0 +1,13 @@ +apacheds +======== + +```yaml +apacheds: + image: vimagick/apacheds + ports: + - "10389:10389" + - "10636:10636" + volumes: + - ./data:/var/lib/apacheds + restart: unless-stopped +``` diff --git a/apacheds/docker-compose.yml b/apacheds/docker-compose.yml new file mode 100644 index 0000000..d61e0b7 --- /dev/null +++ b/apacheds/docker-compose.yml @@ -0,0 +1,8 @@ +apacheds: + image: vimagick/apacheds + ports: + - "10389:10389" + - "10636:10636" + volumes: + - ./data:/var/lib/apacheds + restart: unless-stopped diff --git a/apacheds/docker-entrypoint.sh b/apacheds/docker-entrypoint.sh new file mode 100755 index 0000000..72f60d8 --- /dev/null +++ b/apacheds/docker-entrypoint.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +set -e + +if ! [ -d ${APACHEDS_INSTANCE_DIR} ]; then + cp -r ${APACHEDS_DATA}-${APACHEDS_VERSION}/default ${APACHEDS_INSTANCE_DIR} + chown -R ${APACHEDS_USER}:${APACHEDS_GROUP} ${APACHEDS_INSTANCE_DIR} +fi + +gosu ${APACHEDS_USER} /opt/apacheds-${APACHEDS_VERSION}/bin/apacheds start ${APACHEDS_INSTANCE} + +tail -n 0 -f ${APACHEDS_INSTANCE_DIR}/log/apacheds.log