From 2b0cd765061a7f71ff81b2c93544d5a73a53ebc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20R=C3=B6mhild?= Date: Thu, 4 Feb 2016 10:07:30 +0100 Subject: [PATCH] Update to debian jessie * Move most envvars into scripts * Generate snake oil certificate on container build --- Dockerfile | 25 +++++++++++------------- README.md | 6 ++---- bootstrap/config/tls.ldif | 1 - bootstrap/slapd-init.sh | 41 ++++++++++++++++++++++++++------------- run.sh | 24 +---------------------- 5 files changed, 41 insertions(+), 56 deletions(-) diff --git a/Dockerfile b/Dockerfile index edeee5de..d6d72870 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,21 +1,18 @@ -FROM debian:7 +FROM debian:jessie MAINTAINER Rafael Römhild -ENV DEBUG_LEVEL 256 -ENV LDAP_DOMAIN planetexpress.com -ENV LDAP_ADMIN_SECRET GoodNewsEveryone -ENV LDAP_ORGANISATION Planet Express, Inc. -ENV DEBIAN_FRONTEND noninteractive - # Install slapd and requirements RUN apt-get update \ - && apt-get -y --no-install-recommends install \ - slapd \ - ldap-utils \ - openssl \ - ca-certificates \ + && DEBIAN_FRONTEND=noninteractive apt-get \ + install -y --no-install-recommends \ + slapd \ + ldap-utils \ + openssl \ + ca-certificates \ && rm -rf /var/lib/apt/lists/* +ENV LDAP_DEBUG_LEVEL=256 + # Create TLS certificate and bootstrap directory RUN mkdir /etc/ldap/ssl /bootstrap @@ -33,5 +30,5 @@ VOLUME ["/etc/ldap/slapd.d", "/etc/ldap/ssl", "/var/lib/ldap", "/run/slapd"] EXPOSE 389 EXPOSE 636 -CMD [] -ENTRYPOINT ["/bin/bash", "/run.sh"] +CMD ["/bin/bash", "/run.sh"] +ENTRYPOINT [] diff --git a/README.md b/README.md index 8de9244d..89c0969c 100644 --- a/README.md +++ b/README.md @@ -14,8 +14,7 @@ The Flask extension [flask-ldapconn][flaskldapconn] use this image for unit test ## Features -* Support for TLS -* Autogenerated snake oil cert +* Support for TLS (snake oil cert on build) * Initialized with data from Futurama * ~180MB Images size @@ -30,7 +29,7 @@ docker run --privileged -d -p 389:389 rroemhild/test-openldap ## Exposed ports * 389 - +* 636 ## Exposed volumes @@ -155,4 +154,3 @@ docker run --privileged -d -p 389:389 rroemhild/test-openldap | ou | Delivering Crew | | uid | bender | | userPassword | bender | - diff --git a/bootstrap/config/tls.ldif b/bootstrap/config/tls.ldif index ca73014f..613f15e9 100644 --- a/bootstrap/config/tls.ldif +++ b/bootstrap/config/tls.ldif @@ -8,4 +8,3 @@ olcTLSCertificateKeyFile: /etc/ldap/ssl/ldap.key - replace: olcTLSVerifyClient olcTLSVerifyClient: never - diff --git a/bootstrap/slapd-init.sh b/bootstrap/slapd-init.sh index d7fbeb48..b4414799 100644 --- a/bootstrap/slapd-init.sh +++ b/bootstrap/slapd-init.sh @@ -4,23 +4,22 @@ set -eu readonly DATA_DIR="/bootstrap/data" readonly CONFIG_DIR="/bootstrap/config" +readonly LDAP_DOMAIN=planetexpress.com +readonly LDAP_ORGANISATION="Planet Express, Inc." readonly LDAP_BINDDN="cn=admin,dc=planetexpress,dc=com" +readonly LDAP_SECRET=GoodNewsEveryone - -file_exist() { - local file=$1 - - [[ -e $file ]] -} +readonly LDAP_SSL_KEY="/etc/ldap/ssl/ldap.key" +readonly LDAP_SSL_CERT="/etc/ldap/ssl/ldap.crt" reconfigure_slapd() { echo "Reconfigure slapd..." cat <