Dockerfile LDAP 更新未保存
Dockerfile LDAP updates not saved
我正在尝试创建 docker 从基本图像扩展而来的图像并进行一些调整。添加文件工作正常,但 运行 命令不保存。我一直在查看我正在扩展的图像的 Dockerfile,但我 none 更聪明。
我的 Dockerfile:
FROM openmicroscopy/apacheds:latest
ADD *.ldif /etc/ldifs/
ADD addall.sh /etc/ldifs/addall.sh
RUN /bin/bash /etc/ldifs/addall.sh
bash 脚本:
#!/bin/bash/
/run.sh &
sleep 20
for file in /etc/ldifs/*.ldif
do
ldapadd -v -h localhost:10389 -c -x -D uid=admin,ou=system -w secret -f "$file"
done
有没有人知道如何将项目添加到 ldap 并将其保存为图像?
这行不通,在构建映像时,服务器未启动。您可以创建 bash 在容器 启动 时启动的脚本,您可以在其中 运行 导入。
entrypoint.sh
# check if ldap import already done
# if not - import
for file in /etc/ldifs/*.ldif
do
ldapadd -v -h localhost:10389 -c -x -D uid=admin,ou=system -w secret -f "$file"
done
# if yes - don't import
我正在尝试创建 docker 从基本图像扩展而来的图像并进行一些调整。添加文件工作正常,但 运行 命令不保存。我一直在查看我正在扩展的图像的 Dockerfile,但我 none 更聪明。
我的 Dockerfile:
FROM openmicroscopy/apacheds:latest
ADD *.ldif /etc/ldifs/
ADD addall.sh /etc/ldifs/addall.sh
RUN /bin/bash /etc/ldifs/addall.sh
bash 脚本:
#!/bin/bash/
/run.sh &
sleep 20
for file in /etc/ldifs/*.ldif
do
ldapadd -v -h localhost:10389 -c -x -D uid=admin,ou=system -w secret -f "$file"
done
有没有人知道如何将项目添加到 ldap 并将其保存为图像?
这行不通,在构建映像时,服务器未启动。您可以创建 bash 在容器 启动 时启动的脚本,您可以在其中 运行 导入。
entrypoint.sh
# check if ldap import already done
# if not - import
for file in /etc/ldifs/*.ldif
do
ldapadd -v -h localhost:10389 -c -x -D uid=admin,ou=system -w secret -f "$file"
done
# if yes - don't import