配置容器使其自动启动,为容器配置持久存储

mkdir /var/log/journal 创建日志目录

接着参考宿主机下的日志目录

ll -d /run/log/journal/

ee866c7c799f441081fa56ea4b01adf8.png

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用户

ab3443eadd4a4127b760428b903eb1ca.png

 (1004这个多余,如果出现则前面做错了)

88073a2144b94ab38f4abfe78493ce1a.png

 需注意文件权限,不对的话切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来确认

猜你喜欢

转载自blog.csdn.net/qq_52676760/article/details/124758691