ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux podman容器实验

2022-03-26 09:05:21  阅读:265  来源: 互联网

标签:容器 container -- contsvc journal podman Linux


要求
1.登录到指定的镜像仓库拉取镜像
2.以普通用户contsvc运行
3.配置 systemd-journald 服务,要求永久保留日志数据(物理机,创建文件mkdir /var/log/journal)
3.服务自启动(普通用户身份)
4.将 /var/log/journal(物理机用户为root) 目录及任何子目录中的任何 *.journal 文件复制到/home/contsvc/container_journal 中
6.容器服务启动时能自动将 /home/contsvc/container_ journal挂载到容器中的 /var/log/journal 上

将物理机的数据复制到contsvc的container_journal下,然后拉去镜像。将contaier_journal挂载进容器里的/var/log/contsvc。开机,容器以普通用户自启

实验步骤

lab containers-services start

创建镜像仓库

useradd contsvc
echo redhat | passwd --stdin contsvc

创建普通用户并设置密码

mkdir  /var/log/journal
systemctl restart systemd-journal

创建永久保留日志数据

ssh contsvc@servera

ssh登录contsvc用户

mkdir -p .config/containers/

创建容器配置文件

cp  -ar  /tmp/containers-service/   ./.config/containers/registries.conf

将tmp下的容器仓库拷贝到镜像文件

podman search httpserver

测试是否使用镜像仓库文件

mkdir  .config/container_journal

创建被挂载的数据

cp -a /var/log/journal/*/*.journal   ~/.config/container_journal

将物理机上的日志文件拷到container_journal

podman  login  registry.lab.example.com

登录镜像仓库

podman run -d  --name  httpserver -v  ~/.config/container_journal:/var/log/journal:Z -p 8080:8080 registry.lab.example.com/rhel8/httpd-24:1-105

拉起镜像生成容器

podman exec -it httpserver /bin/bash
cd /var/log/journal;ls

查看有没有挂载成功

exit
mkdir  -p ~/.config/systemd/user
podman generate systemd  --name  httpserver  --files --new
--new 容器停止时删除容器    --files 将输出的内容打印成文件
--name 会使容器名字更工整

登出容器并让容器停止后自动删除容器 (创建systemd单元文件)

podman rm -f  httpserver

停止并且删掉容器

systemctl  --user   daemon-reload

重载单元文件

systemctl   --user enable container-httpserver.service

自启动容器

设置contsvc的服务开机时启动
loginctl enable-linger contsvc
(根据contsvc家目录的单元文件)

loginctl  show-user  contsvc

查看是否成功

reboot
ssh contsvc@servera
podman ps

重启测试

podman exec -it  xxxx  /bin/bash
logger -p authpriv.info 'hello contsvc'

进入容器并测试一条命令

标签:容器,container,--,contsvc,journal,podman,Linux
来源: https://www.cnblogs.com/supermao12/p/16057625.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有