!Docker Stars !Docker Pulls
该镜像提供了一个用于测试LDAP应用(如单元测试)的OpenLDAP服务器。默认情况下,服务器会使用示例域ldapmock.local以及一组posix用户/组进行初始化。
本镜像基于@rroemhild的docker-test-ldap项目构建。
本镜像非自动构建,源代码可在相关Git仓库获取。
如标题所示,本镜像仅用于测试,绝不可用于任何生产环境。 slapd配置极简,容器不将任何数据存储在持久卷中。模拟数据在容器创建时引导生成,删除容器时即丢失。
首先需将镜像拉取到本地
bashdocker pull thoteam/slapd-server-mock
可快速启动一个使用默认模拟数据初始化的容器:
bash# 在Docker网络中供其他容器访问 docker run -d --name my_slapd_mock --network my-network thoteam/slapd-server-mock # 从本地主机或网络中其他主机访问slapd容器 docker run -d -p 389:389 -p 636:636 --name my_slapd_mock thoteam/slapd-server-mock
可通过环境变量和挂载自定义文件轻松定制用于初始化模拟实例的数据。
可在容器中设置以下环境变量:
| 变量名 | 默认值 | 用途 |
|---|---|---|
| LDAP_SECRET | adminpass | slapd管理员密码 |
| LDAP_DOMAIN | ldapmock.local | 用作slapd的配置域并创建自签名SSL证书 |
| LDAP_ORGANISATION | LDAP Mock, Inc. | 用作slapd的配置组织 |
| LDAP_DEBUG_LEVEL | 256 | slapd调试级别(参见man slapd) |
| BOOTSTRAP_DIR | /bootstrap | 存放引导文件的目录,其中包含config.ldif和data.ldif |
以下变量由上述变量计算得出(若手动设置将覆盖计算值):
| 变量名 | 默认值 | 用途 |
|---|---|---|
| LDAP_BASEDN | dc=ldapmock,dc=local | 动态基准DN(用于模板等) |
| LDAP_BINDDN | cn=admin,dc=ldapmock,dc=local | slapd管理员绑定DN |
容器命令run.sh会启动slapd-init.sh脚本。
slapd-init.sh脚本期望在$BOOTSTRAP_DIR目录下存在两个LDIF模板文件:
config.ldif.TEMPLATE:包含slapd配置和 schema 的调整指令data.ldif.TEMPLATE:包含服务器中实际存在的条目(如用户和组)这些文件可包含bash变量表达式,容器启动时会通过gettext包的envsubst命令替换为环境变量值。默认数据模板允许根据所选域名配置所有条目的LDAP_BASEDN。
要覆盖这些文件,只需将本地文件挂载到容器中相应位置。如有需要,可通过设置$BOOTSTRAP_DIR更改容器中默认的/bootstrap目录位置。
bash# 仅覆盖数据 docker run -d --name my_slapd_mock -v /path/to/my/data.ldif:/bootstrap/data.ldif.TEMPLATE thoteam/slapd-server-mock # 同时覆盖数据和配置 docker run -d --name my_slapd_mock -v /path/to/my/bootstrap_dir:/bootstrap thoteam/slapd-server-mock # 在自定义位置覆盖 docker run -d --name my_slapd_mock -v /path/to/my/bootstrap_dir:/customdir -e BOOTSTRAP_DIR=/customdir thoteam/slapd-server-mock
默认LDAP对象定义详见bootstrap/data.ldif。所有用户的密码均为:password
dc=ldapmock,dc=local | cn=admin,dc=ldapmock,dc=local | └─── ou=people,dc=ldapmock,dc=local | | uid=adminuser1,ou=people,dc=ldapmock,dc=local | | uid=adminuser2,ou=people,dc=ldapmock,dc=local | | uid=developper1,ou=people,dc=ldapmock,dc=local | | uid=developper2,ou=people,dc=ldapmock,dc=local | | uid=developper3,ou=people,dc=ldapmock,dc=local | | uid=developper4,ou=people,dc=ldapmock,dc=local | └─── ou=groups,dc=ldapmock,dc=local | └─── cn=admin,ou=groups,dc=ldapmock,dc=local | | memberUID:adminuser1 | | memberUID:adminuser2 | └─── cn=developers,ou=groups,dc=ldapmock,dc=local | memberUID:developper1 | memberUID:developper2 | memberUID:developper3 | memberUID:developper4

来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429