1
0
mirror of https://github.com/zokradonh/kopano-docker synced 2025-06-07 16:06:14 +00:00

Add second ldap image without demo data (#150)

* have a separate ldap container for demo data
* add question to setup.sh about demo users
* make ldap container switchable
* piggyback small fixup for search failing when starting directly after kopano-server

fixes #53
This commit is contained in:
Felix Bartels 2019-05-09 09:22:33 +02:00 committed by GitHub
parent 39fc0a90df
commit 124eb25513
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 34 additions and 6 deletions

View File

@ -31,7 +31,7 @@ COMPONENT = $(shell echo $(component) | tr a-z A-Z)
.PHONY: all .PHONY: all
all: build-all all: build-all
build-all: build-base build-core build-kdav build-konnect build-kwmserver build-ldap-demo build-meet build-php build-playground build-scheduler build-ssl build-utils build-web build-webapp build-zpush build-all: build-base build-core build-kdav build-konnect build-kwmserver build-ldap build-ldap-demo build-meet build-php build-playground build-scheduler build-ssl build-utils build-web build-webapp build-zpush
.PHONY: build .PHONY: build
build: component ?= base build: component ?= base
@ -112,7 +112,10 @@ build-konnect:
build-kwmserver: build-kwmserver:
component=kwmserver make build-simple component=kwmserver make build-simple
build-ldap-demo: build-ldap:
component=ldap make build-simple
build-ldap-demo: build-ldap
component=ldap_demo make build-simple component=ldap_demo make build-simple
build-meet: build-base build-meet: build-base
@ -250,6 +253,9 @@ publish-konnect: build-konnect tag-konnect
publish-kwmserver: build-kwmserver tag-kwmserver publish-kwmserver: build-kwmserver tag-kwmserver
component=kwmserver make publish-container component=kwmserver make publish-container
publish-ldap: build-ldap
docker push $(docker_repo)/kopano_ldap:latest
publish-ldap-demo: build-ldap-demo publish-ldap-demo: build-ldap-demo
docker push $(docker_repo)/kopano_ldap_demo:latest docker push $(docker_repo)/kopano_ldap_demo:latest

View File

@ -113,6 +113,8 @@ search)
dockerize \ dockerize \
-wait file://var/run/kopano/server.sock \ -wait file://var/run/kopano/server.sock \
-timeout 360s -timeout 360s
# give kopano-server a moment to settler before starting search
sleep 5
# cleaning up env variables # cleaning up env variables
unset "${!KCCONF_@}" unset "${!KCCONF_@}"
exec /usr/bin/python3 /usr/sbin/kopano-search -F exec /usr/bin/python3 /usr/sbin/kopano-search -F

View File

@ -27,7 +27,7 @@ services:
- ${FQDNCLEANED?err} - ${FQDNCLEANED?err}
ldap: ldap:
image: ${docker_repo:-zokradonh}/kopano_ldap_demo image: ${docker_repo:-zokradonh}/${LDAP_CONTAINER:-kopano_ldap_demo}
restart: unless-stopped restart: unless-stopped
container_name: ${COMPOSE_PROJECT_NAME}_ldap container_name: ${COMPOSE_PROJECT_NAME}_ldap
ports: ports:

5
ldap/Dockerfile Normal file
View File

@ -0,0 +1,5 @@
FROM osixia/openldap:1.2.4
COPY bootstrap /container/service/slapd/assets/config/bootstrap
RUN rm /container/service/slapd/assets/config/bootstrap/schema/mmc/mail.schema
RUN touch /etc/ldap/slapd.conf

5
ldap/README.md Normal file
View File

@ -0,0 +1,5 @@
# Kopano LDAP image
[![](https://images.microbadger.com/badges/image/zokradonh/kopano_ldap.svg)](https://microbadger.com/images/zokradonh/kopano_ldap "Microbadger size/labels") [![](https://images.microbadger.com/badges/version/zokradonh/kopano_ldap.svg)](https://microbadger.com/images/zokradonh/kopano_ldap "Microbadger version")
Image to for an OpenLDAP server that already includes the Kopano LDAP schema. Based on https://github.com/osixia/docker-openldap.

View File

@ -1,5 +1,4 @@
FROM osixia/openldap:1.2.4 ARG docker_repo=zokradonh
FROM ${docker_repo}/kopano_ldap
COPY bootstrap /container/service/slapd/assets/config/bootstrap COPY bootstrap /container/service/slapd/assets/config/bootstrap
RUN rm /container/service/slapd/assets/config/bootstrap/schema/mmc/mail.schema
RUN touch /etc/ldap/slapd.conf

View File

@ -164,6 +164,16 @@ if [ ! -e ./.env ]; then
PRINT_SETUP_SUCCESS="$PRINT_SETUP_SUCCESS \n!! You have specified the LDAP server '${LDAP_SERVER}', don't forget to remove the bundled ldap and ldap-admin services in docker-compose.yml\n" PRINT_SETUP_SUCCESS="$PRINT_SETUP_SUCCESS \n!! You have specified the LDAP server '${LDAP_SERVER}', don't forget to remove the bundled ldap and ldap-admin services in docker-compose.yml\n"
else else
value_default="yes"
read -r -p "Use bundled LDAP with demo users? yes/no [$value_default]: " new_value
LDAP_CONTAINER_QUESTION=${new_value:-$value_default}
if [ "${LDAP_CONTAINER_QUESTION}" == "yes" ]; then
LDAP_CONTAINER="kopano_ldap_demo"
else
LDAP_CONTAINER="kopano_ldap"
fi
LDAP_ADMIN_PASSWORD=$(random_string) LDAP_ADMIN_PASSWORD=$(random_string)
LDAP_SEARCH_BASE="$LDAP_BASE_DN" LDAP_SEARCH_BASE="$LDAP_BASE_DN"
LDAP_BIND_DN="cn=readonly,$LDAP_BASE_DN" LDAP_BIND_DN="cn=readonly,$LDAP_BASE_DN"
@ -273,6 +283,7 @@ KWM_VERSION=$KWM_VERSION
MEET_VERSION=$MEET_VERSION MEET_VERSION=$MEET_VERSION
KDAV_VERSION=$KDAV_VERSION KDAV_VERSION=$KDAV_VERSION
LDAP_CONTAINER=$LDAP_CONTAINER
LDAP_ORGANISATION="$LDAP_ORGANISATION" LDAP_ORGANISATION="$LDAP_ORGANISATION"
LDAP_DOMAIN=$FQDN LDAP_DOMAIN=$FQDN
LDAP_BASE_DN=$LDAP_BASE_DN LDAP_BASE_DN=$LDAP_BASE_DN