FROM mongo:8.0.8 为基础镜像,加了些初始化数据做的mongodb镜像。用podman管理和backend,frontend组成一个简单的BS架构。利用podman创建pod,3个镜像同用一个空间,项目内部连接就可以统一用127.0.0.1加上端口进行通信了。

要使用podman,需要用podman生成镜像,和docker操作一样,在Dockerfile文件目录下面进行```

podman build --progress=plain -t <imgname>:<tag> .

创建好了后用

podman pod create --name <podnam> -p <port_host:port_container> -p <port_host:port_container> ...

创建pod,然后用之前生成的image创建并运行容器,其中,在mongodb的运行过程中

podman run  -id --rm --name <container_name> --pod <the pod name>  -v <host machine path>:/data/db  localhost/<mongo image name>:<mongo image> tag mongod --auth --bind_ip 0.0.0.0

出现了changing ownership of '/data/db..' : Operation not permitted,或者FileNotOpen, errmsg: Failed to read metadata from /data/db/storage.bson

以下是原因和方案:

  1. mongodb中Dockerfile会创建一个用户名mongodb(uid=999),创建一个用户组mongodb(gid=999)。于是挂载的宿主机目录下的db文件都归属于999
  2. 宿主机没有999这个用户。当前宿主机的用户是kiramario,uid=1000,gid=1000
  3. podman中宿主机和容器之间的命名空间有一个映射,比如kiramario用户运行podman run后,容器里面被映射为root(0)但是它不是真root,所以没有权限改归属于999的文件。
  4. 查看/etc/subuid,结果是kiramario:100000:65536,意思是映射规则是从100000开始,可以映射65536个。容器映射到主机是100000+999-1 = 100998
  5. podman unshare chown 999:999 <host machine path>,在宿主机上查看ls -l发现文件归属是100998,对上了,就有权限了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/920163.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/920163.shtml
英文地址,请注明出处:http://en.pswp.cn/news/920163.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UE5基本打光(新手向)

在UE5中场景照明往往是构建沉浸式视觉体验的关键环节与常见挑战。学会如何打光可以为项目创建出更具表现力和艺术感的灯光效果。 1.以UE5建筑展示demo为例&#xff0c;首先删除旧的光照&#xff0c;将光照相关配置放置新的场景Light中。这样更适合多人分工。 光照子场景Light&…

PiscCode使用OpenCV和Python实现运动检测与可视化

光流分析是计算机视觉中的重要技术&#xff0c;用于检测视频序列中物体的运动模式。本文将介绍如何使用OpenCV和Python实现一个实时的光流分析系统&#xff0c;该系统能够检测运动、生成热力图并提供详细的统计分析。 技术概述 本系统基于Farneback稠密光流算法&#xff0c;能…

Day 36 复习日

浙大疏锦行 今天是复习日&#xff0c;神经网络与机器学习最大的不同就是不止固定的三行代码&#xff0c;需要自己定义一个模型&#xff0c;先继承类的属性&#xff0c;然后去写自己的属性&#xff0c;以及前向传播方法&#xff0c;可以手动构建&#xff1a;中间层的数量、每一…

ES6/ES2015 - ES16/ES2025

ES6/ES2015 - ES16/ES2025 ECMAScript&#xff08;简称ES&#xff09;是JavaScript的官方标准&#xff0c;从2015年开始每年发布一个新版本。 版本一览表年份版本主要新特性2015ES6/ES2015let/const、箭头函数、Class、模板字符串、解构赋值、模块、Promise2016ES7/ES2016指数运…

BIM 地铁站可视化:智慧运维 “透视镜”

图扑 BIM 地铁站可视化系统&#xff0c;以三维建模完整复刻车站空间&#xff0c;从出入口、站厅到设备层&#xff0c;管线走向、设施分布精准呈现。实时汇聚客流数据、空调等设备运行状态&#xff0c;动态标记设备告警、空间占用情况。通过透明化模型&#xff0c;运维人员可直观…

淘宝商品详情页数据接口设计与实现:从合规采集到高效解析

在电商数据分析、比价系统开发等场景中&#xff0c;商品详情页数据是核心基础。本文将围绕淘宝商品详情页数据接口的合规设计、高效采集与智能解析展开&#xff0c;提供一套可落地的技术方案&#xff0c;重点解决动态渲染、参数加密与数据结构化等关键问题。 一、接口设计原则…

HTML应用指南:利用GET请求获取中国银行人民币存款利率数据

人民币存款利率是影响居民储蓄行为和企业资金配置的关键因素&#xff0c;也是宏观经济调控的重要工具。中国银行根据中国人民银行的指导政策&#xff0c;结合市场情况与自身经营策略&#xff0c;定期调整并公布人民币存款利率标准。这些利率信息主要涵盖活期存款、定期存款&…

RPS和QPS

简介 这是系统设计中两个最核心且容易混淆的性能指标。简单来说&#xff1a; • RPS 是 “每秒请求数”&#xff0c;是从客户端或负载均衡器的视角看&#xff0c;服务器每秒接收到的请求数量。 • QPS 是 “每秒查询数”&#xff0c;通常是从数据库或特定服务的视角看&…

如何将用户反馈转化为可执行需求

用户反馈是企业优化产品、改进服务的重要依据。将用户反馈转化为可执行需求的核心在于通过系统化的流程对反馈进行收集、分析和分类&#xff0c;并结合企业的战略目标与技术能力&#xff0c;制定出具体的执行方案。这一过程不仅要求企业深入理解用户需求&#xff0c;还需要跨部…

ry-vue docker部署

目录 整体架构概览 创建 Docker 自定义网络 Redis 部署&#xff08;缓存服务&#xff09; redis.conf修改 启动 Redis 容器 测试 启动 MySQL 容器 允许 root 用户远程访问&#xff08;%&#xff09; 初始化数据库&#xff08;可选&#xff09; RuoYi-Admin 后端服务部…

Redis之Keys命令和Scan命令

序言 网上看到的面试题&#xff1a;Redis有1亿个key&#xff0c;其中10w个key是以某个固定的前缀开头&#xff0c;如何将它们全部找出来&#xff1f;一般有两种命令可以实现&#xff1a; Keys命令Scan命令 下面具体分析一下两种命令 Keys命令 Keys pattern如下图所示&…

【小沐学GIS】基于Godot绘制三维数字地球Earth(Godot)

&#x1f37a;三维数字地球GIS系列相关文章&#xff08;C&#xff09;如下&#x1f37a;&#xff1a;1【小沐学GIS】基于C绘制三维数字地球Earth&#xff08;OpenGL、glfw、glut&#xff09;第一期2【小沐学GIS】基于C绘制三维数字地球Earth&#xff08;OpenGL、glfw、glut&…

day62 Floyd 算法 A * 算法

Floyd 算法本题是经典的多源最短路问题.Floyd 算法对边的权值正负没有要求&#xff0c;都可以处理。Floyd算法核心思想是动态规划。例如我们再求节点1 到 节点9 的最短距离&#xff0c;用二维数组来表示即&#xff1a;grid[1][9]&#xff0c;如果最短距离是10 &#xff0c;那就…

【软考论文】论可观测性架构技术的应用

&#x1f381; 考高级架构师的小伙伴注意了&#xff01;&#x1f4e2; 软考架构论文示例 2025年11月软考架构论文预测&#x1f44d; 一、历年论文题目 无&#xff01;&#xff01;&#xff01; 二、考情分析 “可观测性技术”这一论题&#xff0c;目前在高级架构师与高级系统分…

软件测试:测试分类(一)

常用测试分类1.功能测试&#xff08;人对功能的确定&#xff0c;保证某个功能可以正常进行&#xff09;如验证你输入正确的手机号码和密码是否登录成功。手机号码不存在是否有提示&#xff0c;密码不正确是否有提示等2.自动化测试&#xff08;如jmeter&#xff0c;属于黑盒测试…

BigFoot (Method Raid Tools)[MRT] (Event Alert Mod)[EAM]

检查法术技能ID&#xff0c;需要EAM命令&#xff0c;所以要先安装EAM BigFoot EventAlertMod lua-CSDN博客 /eam lookup 冰封之韧 同时我们发现一个糟糕的问题&#xff0c;为什么会有这么多ID呢&#xff0c;默认第一个 还有一种法子就是让别人开了技能告诉你ID&#xff0c;最…

【Scrapy-Redis】分布式爬虫实战(非常详细)

一、概要 1.分布式爬虫概念 分布式爬虫是一种利用多台机器协同工作的网络爬虫系统&#xff0c;通过任务分解、并行处理和资源共享&#xff0c;高效抓取并处理海量网页数据。其核心在于将爬取任务分配到不同节点&#xff0c;避免单点性能瓶颈&#xff0c;同时支持动态扩展和容错…

基于51单片机智能化交通红绿灯堵车流量红外设计

1 系统功能介绍 本设计题目为 基于51单片机智能化交通红绿灯堵车流量红外设计&#xff0c;主要用于十字路口交通信号智能控制&#xff0c;通过红外避障检测车流量&#xff0c;自动调节红绿灯时间&#xff0c;缓解拥堵。该系统由单片机、LED灯、红外避障传感器、LCD1602液晶显示…

VsCode 上的Opencv(C++)环境配置(Linux)

1.下载Opencv1.新建文件demo_cpp,在demo_cpp中新建third_parties文件2.OPENCV官网下载OpenCV-4.12.03.将下载好的opencv-4.12.0.zip压缩包在third_parties中解压,//以下均无特殊说明,均在vscode里的TERMINAL中输入 sudo apt-get install unzip//用于解压.zip文件 cd third_part…

sql xml模板

<?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace"com.example.mapper.UserMapper&quo…