mkdir /var/log/journal 创建日志目录
接着参考宿主机下的日志目录
ll -d /run/log/journal/
chown root:systemd-journal /var/log/journal 修改属组
chmod 2755 /var/log/journal/ 修改权限
systemctl restart systemd-journald 重启systemd-journald服务
ls /var/log/journal/ 此时查看该文件夹会发现有文件产生
cp -rf /var/log/journal/f874df04639f474cb0a9881041f4f7d4/*.journal /home/wallah/container_logfile/ 将文件复制到该文件夹中
chown -R wallah:wallah /home/wallah/ 修改该路径的所有者为wallah
然后exit退出,切换为wallah用户
(1004这个多余,如果出现则前面做错了)
需注意文件权限,不对的话切root用户修改
上述准备工作结束后,使用podman创建容器
podman login registry.domain250.example.com 登录服务器
podman search registry.domain250.example.com/ 查找服务器下的镜像
podman run -d --name logserver -v /home/wallah/container_logfile:/var/log/journal:Z registry.domain250.example.com/rhel8/rsyslog
(-v 将宿主机目录挂载到容器目录 -Z是selinux权限 最后跟search出的其中之一镜像)
可使用podman ps 来查看容器是否启动
停止该容器podman stop logserver 因为要求使用systemd的方式启动
mkdir -p .config/systemd/user 在当前用户家目录下创建该目录
cd .config/systemd/user/
podman generate systemd -n logserver -f 使用podman创建一个微服务,-f是指当前目录 -n后写容器名
ls查看服务名
systemctl --user enable --now container-logserver.service 使用systemctl启动该服务(最后写的是上步看到的服务名)
systemctl --user status container-logserver.service 查看服务状态
loginctl enable-linger 让用户实例随系统自动启动
可使用loginctl show-user wallah来确认