[info=698dcfe25b899557964d446124d5122b2f6fe4e6]
OBS-URL: https://build.opensuse.org/package/show/devel:BCI:Tumbleweed/389-ds-image?expand=0&rev=1
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 9 11:43:02 UTC 2025 - SUSE Update Bot <bci-internal@suse.de>
|
||||
|
||||
- rename from 389-ds-container
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 09 11:41:19 UTC 2025 - SUSE Update Bot <bci-internal@suse.de>
|
||||
|
||||
- First version of the 389 Directory Server BCI
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon.
|
||||
|
||||
# The content of THIS FILE IS AUTOGENERATED and should not be manually modified.
|
||||
# It is maintained by the BCI team and generated by
|
||||
# https://github.com/SUSE/BCI-dockerfile-generator
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
# You can contact the BCI team via https://github.com/SUSE/bci/discussions
|
||||
|
||||
#!UseOBSRepositories
|
||||
#!ExclusiveArch: aarch64 ppc64le s390x x86_64
|
||||
#!BuildTag: opensuse/389-ds:%%389ds_version%%-%RELEASE%
|
||||
#!BuildTag: opensuse/389-ds:%%389ds_version%%
|
||||
#!BuildTag: opensuse/389-ds:3.1
|
||||
#!BuildTag: opensuse/389-ds:latest
|
||||
|
||||
FROM opensuse/tumbleweed:latest
|
||||
|
||||
RUN set -euo pipefail; \
|
||||
zypper -n install --no-recommends 389-ds timezone openssl nss_synth
|
||||
RUN set -euo pipefail; zypper -n clean -a; \
|
||||
rm -rf {/target,}/var/log/{alternatives.log,lastlog,tallylog,zypper.log,zypp/history,YaST2}; rm -f {/target,}/etc/shadow-
|
||||
|
||||
# Define labels according to https://en.opensuse.org/Building_derived_containers
|
||||
# labelprefix=org.opensuse.application.389-ds
|
||||
LABEL org.opencontainers.image.authors="william.brown@suse.com"
|
||||
LABEL org.opencontainers.image.title="openSUSE Tumbleweed 389 Directory Server"
|
||||
LABEL org.opencontainers.image.description="389 Directory Server container based on the openSUSE Tumbleweed Base Container Image."
|
||||
LABEL org.opencontainers.image.version="%%389ds_version%%"
|
||||
LABEL org.opencontainers.image.url="https://www.opensuse.org"
|
||||
LABEL org.opencontainers.image.created="%BUILDTIME%"
|
||||
LABEL org.opencontainers.image.vendor="openSUSE Project"
|
||||
LABEL org.opencontainers.image.source="%SOURCEURL%"
|
||||
LABEL org.opencontainers.image.ref.name="%%389ds_version%%-%RELEASE%"
|
||||
LABEL org.opensuse.reference="registry.opensuse.org/opensuse/389-ds:%%389ds_version%%-%RELEASE%"
|
||||
LABEL org.openbuildservice.disturl="%DISTURL%"
|
||||
LABEL org.opensuse.lifecycle-url="https://en.opensuse.org/Lifetime#openSUSE_BCI"
|
||||
LABEL org.opensuse.release-stage="released"
|
||||
# endlabelprefix
|
||||
LABEL io.artifacthub.package.readme-url="%SOURCEURL_WITH(README.md)%"
|
||||
CMD ["/usr/lib/dirsrv/dscontainer", "-r"]
|
||||
EXPOSE 3389/tcp 3636/tcp
|
||||
|
||||
COPY nsswitch.conf /etc/nsswitch.conf
|
||||
|
||||
RUN set -euo pipefail; mkdir -p /data/config; \
|
||||
mkdir -p /data/ssca; \
|
||||
mkdir -p /data/run; \
|
||||
mkdir -p /var/run/dirsrv; \
|
||||
ln -s /data/config /etc/dirsrv/slapd-localhost; \
|
||||
ln -s /data/ssca /etc/dirsrv/ssca; \
|
||||
ln -s /data/run /var/run/dirsrv
|
||||
|
||||
HEALTHCHECK --start-period=5m --timeout=5s --interval=5s --retries=2 \
|
||||
CMD /usr/lib/dirsrv/dscontainer -H
|
||||
|
||||
VOLUME /data
|
||||
@@ -0,0 +1,10 @@
|
||||
<services>
|
||||
<service mode="buildtime" name="docker_label_helper"/>
|
||||
<service mode="buildtime" name="kiwi_metainfo_helper"/>
|
||||
<service mode="buildtime" name="replace_using_package_version">
|
||||
<param name="file">Dockerfile</param>
|
||||
<param name="regex">%%389ds_version%%</param>
|
||||
<param name="package">389-ds</param>
|
||||
<param name="parse-version">patch</param>
|
||||
</service>
|
||||
</services>
|
||||
@@ -0,0 +1,24 @@
|
||||
*.changes merge=merge-changes
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tar filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||
@@ -0,0 +1,4 @@
|
||||
*.obscpio
|
||||
*.osc
|
||||
_build.*
|
||||
.pbuild
|
||||
@@ -0,0 +1,94 @@
|
||||
# 389 Directory Server container image
|
||||
|
||||
## Description
|
||||
|
||||
[389 Directory Server](https://www.port389.org/) is a highly usable, fully
|
||||
featured, reliable and secure LDAP server implementation.
|
||||
|
||||
## Usage
|
||||
|
||||
By default, the image launches 389 Directory Server with the same
|
||||
configuration that comes with the SUSE Linux Enterprise Server. However there
|
||||
is also included a pre-configured Name Service Switch (NSS) configuration
|
||||
file (`/etc/nsswitch.conf`).
|
||||
|
||||
```ShellSession
|
||||
$ podman run -it --rm -p 3389:3389 -p 3636:3636 registry.opensuse.org/opensuse/389-ds:3.1
|
||||
```
|
||||
|
||||
## Volumes
|
||||
|
||||
The database is stored in the volume mounted as directory `/data`. A new
|
||||
empty database is created during container startup, unless an existing
|
||||
database is already present in `/data`.
|
||||
|
||||
To mount a host directory as a volume for your database, run the following
|
||||
command:
|
||||
|
||||
```ShellSession
|
||||
$ podman run -it --rm -v /my/own/datadir:/data:Z -p 3389:3389 -p 3636:3636 registry.opensuse.org/opensuse/389-ds:3.1
|
||||
```
|
||||
|
||||
## Certificates
|
||||
|
||||
By default, the container uses a self-signed CA certificate and a server
|
||||
certificate signed by that CA.
|
||||
|
||||
Place a custom TLS certificate in PEM format in `/data/tls/server.crt` and
|
||||
the key in and `/data/tls/server.key`. Place the CA certificates (each as a
|
||||
separate file) to `/data/tls/ca/`, for example, `/data/tls/ca/ca1.crt` and
|
||||
`/data/tls/ca/ca2.crt`.
|
||||
|
||||
## Environment variables
|
||||
|
||||
### DS_ERRORLOG_LEVEL
|
||||
|
||||
Use this optional environment variable to set the log level for
|
||||
`ns-slapd` (default is `266354688`).
|
||||
|
||||
### DS_DM_PASSWORD
|
||||
|
||||
Use this optional environment variable to set the `cn=Directory Manager`
|
||||
password (a default password is generated randomly). The default randomly
|
||||
generated password can be viewed in the setup log.
|
||||
|
||||
### DS_MEMORY_PERCENTAGE
|
||||
|
||||
Use this optional environment variable to set the LDBM autotune
|
||||
percentage (`nsslapd-cache-autosize`) (default is unset).
|
||||
|
||||
### DS_REINDEX
|
||||
|
||||
Use this optional environment variable to run a database re-index task. Set
|
||||
the value to `1` to enable the task (default is disabled).
|
||||
|
||||
### DS_SUFFIX_NAME
|
||||
|
||||
Use this optional environment variable to set the default database
|
||||
suffix name for `basedn` (default one is derived from the hostname).
|
||||
|
||||
### DS_STARTUP_TIMEOUT
|
||||
|
||||
Use this optional environment variable to change the time to wait for the
|
||||
instance to start (default is `60` seconds).
|
||||
|
||||
### DS_STOP_TIMEOUT
|
||||
|
||||
Use this optional environment variable to change the time to wait for the
|
||||
instance to stop (default is `60` seconds).
|
||||
|
||||
## Health, liveness, and readiness
|
||||
|
||||
The container image includes one explicit health check. This check will
|
||||
verify if the service is misconfigured, `ns-slapd` is running, and if the
|
||||
LDAPI is functional.
|
||||
|
||||
## Licensing
|
||||
|
||||
`SPDX-License-Identifier: MIT`
|
||||
|
||||
This documentation and the build recipe are licensed as MIT.
|
||||
The container itself contains various software components under various open source licenses listed in the associated
|
||||
Software Bill of Materials (SBOM).
|
||||
|
||||
This image is based on [openSUSE Tumbleweed](https://get.opensuse.org/tumbleweed/).
|
||||
@@ -0,0 +1,22 @@
|
||||
passwd: compat synth
|
||||
group: compat synth
|
||||
shadow: compat
|
||||
# Allow initgroups to default to the setting for group.
|
||||
# initgroups: compat
|
||||
|
||||
hosts: files dns
|
||||
networks: files dns
|
||||
|
||||
aliases: files usrfiles
|
||||
ethers: files usrfiles
|
||||
gshadow: files usrfiles
|
||||
netgroup: files nis
|
||||
protocols: files usrfiles
|
||||
publickey: files
|
||||
rpc: files usrfiles
|
||||
services: files usrfiles
|
||||
|
||||
automount: files nis
|
||||
bootparams: files
|
||||
netmasks: files
|
||||
|
||||
Reference in New Issue
Block a user