我安装了 docker rootlessdockerd-rootless-setuptool.sh install
到 rhel 7.9。输出的信息如下。
[INFO] systemd not detected, dockerd-rootless.sh needs to be started manually:
systemctl --user start docker
当我尝试按照文档中的描述启动服务时,它失败并出现错误Failed to get D-Bus connection: No such file or directory
。我阅读了这里的一些帖子并调试情况,我启用了上述用户的徘徊。我可以在路径中看到该文件ll /var/lib/systemd/linger
。之后,当我运行systemctl --user
命令时,再次出现“失败的 Dbus 连接”错误。我可以在启用 linger 后列出我的用户loginctl list-users
,但是当我运行 时ps -fu dockeruser
,输出并未/usr/lib/systemd --user
按预期显示。输出如下。
ps -fu dockeruser
UID PID PPID C STIME TTY TIME CMD
dockeru+ 45222 45220 0 10:58 ? 00:00:00 sshd: dockeruser@pts/0
dockeru+ 45225 45222 0 10:58 pts/0 00:00:00 -bash
dockeru+ 45254 45223 0 10:58 ? 00:00:00 sshd: dockeruser@notty
dockeru+ 45255 45254 0 10:58 ? 00:00:00 /usr/libexec/openssh/sftp-server
dockeru+ 47264 45222 0 11:10 ? 00:00:00 bash -c while [ -d /proc/$PPID ]; do sleep 1;head -v -n 8 /proc/meminfo; head -v -n 2 /proc/s
dockeru+ 50009 47264 0 11:18 ? 00:00:00 sleep 1
dockeru+ 50010 45225 0 11:18 pts/0 00:00:00 ps -fu dockeruser
我使用ssh登录服务器。我的 dockeruser 的 bashrc 设置为 docker 安装所需的。
#User specific aliases and functions
export XDG_RUNTIME_DIR=/home/dockeruser/.docker/run
export PATH=/bin:$PATH
# Some applications may require the following environment variable too:
export DOCKER_HOST=unix:///home/dockeruser/.docker/run/docker.sock
文档中还提到,The systemd unit file is installed as ~/.config/systemd/user/docker.service.
当我检查该文件时,我发现它丢失了。也许安装工具有问题或者什么?
答案1
解决方案:使用 rhel 8。