
FreeIPA服务器容器镜像基于https://github.com/freeipa/freeipa-container%E6%9E%84%E5%BB%BA%EF%BC%8C%E6%8F%90%E4%BE%9B%E9%9B%86%E4%B8%AD%E5%BC%8F%E8%BA%AB%E4%BB%BD%E8%AE%A4%E8%AF%81%E3%80%81%E6%8E%88%E6%9D%83%E3%80%81%E8%B4%A6%E6%88%B7%E7%AE%A1%E7%90%86%E5%8F%8A%E5%9F%9F%E5%90%8D%E6%9C%8D%E5%8A%A1%EF%BC%88DNS%EF%BC%89%E3%80%82%E5%AE%B9%E5%99%A8%E9%80%9A%E8%BF%87systemd%E7%AE%A1%E7%90%86%E5%86%85%E9%83%A8%E6%9C%8D%E5%8A%A1%EF%BC%8C%E6%94%AF%E6%8C%81%E9%83%A8%E7%BD%B2%E4%B8%BB%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%88%96%E5%89%AF%E6%9C%AC%EF%BC%8C%E6%95%B0%E6%8D%AE%E9%80%9A%E8%BF%87%E6%8C%81%E4%B9%85%E5%8C%96%E5%AD%98%E5%82%A8%E5%8D%B7%E4%BF%9D%E5%AD%98%EF%BC%8C%E5%8F%AF%E5%AE%9E%E7%8E%B0%E9%85%8D%E7%BD%AE%E4%B8%8E%E6%95%B0%E6%8D%AE%E7%9A%84%E5%8D%87%E7%BA%A7%E8%BF%81%E7%A7%BB%E3%80%82
almalinux-9/rocky-9)、开发测试版(fedora-*)及最新版(fedora-rawhide)标签/data目录,支持通过卷挂载实现持久化ipa-server-install)和副本(ipa-replica-install)部署rocky-9-4.*.*)部署集中式身份认证服务| 用途 | 推荐标签 | 说明 |
|---|---|---|
| 生产环境 | freeipa/freeipa-server:rocky-9 | 稳定版,基于Rocky Linux 9 |
| 生产环境(固定版本) | freeipa/freeipa-server:rocky-9-4.*.* | 指定FreeIPA版本,更高稳定性 |
| 开发测试 | freeipa/freeipa-server:fedora-* | 基于Fedora,包含新特性 |
| 最新特性 | freeipa/freeipa-server:fedora-rawhide | 最新开发版本 |
容器运行时配置
podman run/etc/docker/daemon.json中添加{ "userns-remap": "default" },重启Docker服务-v /sys/fs/cgroup:/sys/fs/cgroup:rosetsebool -P container_manage_cgroup 1允许容器管理cgroup数据目录准备
创建主机数据目录并挂载至容器/data:
bashmkdir /var/lib/ipa-data # 主机数据目录
交互式安装
首次运行时通过ipa-server-install交互式配置(默认命令,可省略):
bashpodman run --name freeipa-server -ti \ -h ipa.example.test \ # 设置容器主机名(必须) --read-only \ # 只读根文件系统(推荐) -v /var/lib/ipa-data:/data:Z \ # 挂载数据卷(Z选项修复SELinux上下文) freeipa/freeipa-server ipa-server-install -r EXAMPLE.TEST --no-ntp
非交互式安装
使用-U参数及环境变量实现无人值守安装:
bashdocker run --name freeipa-server -ti \ -h ipa.example.test \ --read-only \ -v /var/lib/ipa-data:/data:Z \ -e PASSWORD=Secret123 \ # 管理员密码 freeipa/freeipa-server ipa-server-install -U -r EXAMPLE.TEST --no-ntp
安装选项传递方式
ipa-server-install参数(如上述示例)-e IPA_SERVER_INSTALL_OPTS="参数"传递,例如:
bashpodman run ... -e IPA_SERVER_INSTALL_OPTS="-U -r EXAMPLE.TEST --no-ntp" freeipa/freeipa-server
ipa-server-install-options文件,每行一个参数:
ini# /var/lib/ipa-data/ipa-server-install-options内容 --realm=EXAMPLE.TEST --ds-password=DirSrvPass123 --admin-password=AdminPass123
通过ipa-replica-install命令部署副本,需指定主服务器信息:
bashpodman run --name freeipa-replica -ti \ -h replica.example.test \ --read-only \ -v /var/lib/ipa-replica-data:/data:Z \ freeipa/freeipa-server ipa-replica-install --server=ipa.example.test -p Secret123
副本安装选项也可通过
ipa-replica-install-options文件传递(同主服务器文件方式)
若需从外部访问FreeIPA服务,需映射端口并设置IPA_SERVER_IP环境变量:
bashdocker run ... \ -e IPA_SERVER_IP=10.12.0.98 \ # 容器对外暴露的IP(需与主机端口映射对应) -p 53:53/udp -p 53:53 \ # DNS -p 80:80 -p 443:443 \ # HTTP/HTTPS -p 389:389 -p 636:636 \ # LDAP/LDAPS -p 88:88 -p 464:464 \ # Kerberos -p 88:88/udp -p 464:464/udp \ -p 123:123/udp \ # NTP(若启用) freeipa/freeipa-server ...
选择基于目标OS的*-client分支,构建镜像:
bashgit clone https://github.com/freeipa/freeipa-container.git cd freeipa-container git checkout fedora-client # 选择OS分支(如fedora-client、rocky-client等) docker build -t freeipa-client .
客户端需正确配置DNS或直接链接到服务器容器:
bashdocker run --privileged \ --link freeipa-server-container:ipa \ # 链接到服务器容器 -e PASSWORD=Secret123 \ # 管理员密码 -ti freeipa-client
首次运行时自动执行
ipa-client-install完成域加入
DEBUG_TRACE=1:启用脚本执行跟踪(显示详细执行过程)DEBUG_NO_EXIT=1:脚本失败后不退出容器,可通过exec进入调试:
bashpodman exec -it freeipa-server-container bash # 进入运行中的容器
exit-on-finished:配置完成后自动退出容器(用于一次性部署脚本)
bashdocker run ... freeipa/freeipa-server exit-on-finished -U -r EXAMPLE.TEST
no-exit:同DEBUG_NO_EXIT=1,作为命令参数使用:
bashpodman run ... freeipa/freeipa-server no-exit -U -r EXAMPLE.TEST
bashpodman run ... -v /var/lib/ipa-data:/data:Z freeipa/freeipa-server:rocky-9-new
cp -a /var/lib/ipa-data /var/lib/ipa-data-backup可通过项目测试脚本验证容器功能:
bash# 使用Docker运行测试 tests/run-partial-tests.sh Dockerfile # 使用Podman运行测试 docker=podman tests/run-partial-tests.sh Dockerfile
本镜像基于Apache License 2.0许可,详见Apache License 2.0。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 版本下载页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务