docker: 将一个普通用户owner的文件夹挂载入容器,新建的文件为root的解决方法

本文主要是介绍docker: 将一个普通用户owner的文件夹挂载入容器,新建的文件为root的解决方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在某台服务器上,一个普通用户(假设用户名为szw,用户组ID与用户ID相同,均为1026)使用docker,将自己拥有的一个文件夹挂载入容器,进行计算任务。
计算完成后,新建的文件为root的解决方法,普通用户无法删除。

1. build一个镜像,在这个镜像中新建一个用户

为了解决这个问题,我们首先要对于原有的镜像进行改造,让这个镜像增加一个用户。
首先要知道我在这个服务器上的giduid

在终端中输入命令:

cat /etc/passwd

在这里插入图片描述
看到uidgid均为1026

新建new_user.Dockerfile

FROM harbor.atompai.com/nitrogen/xdock:v1
MAINTAINER qichun.tang@xtalpi.com
ENV NEW_UNAME="szw"   # 填入你的用户名
ENV NEW_UID="1026"        # 填入你的uid
RUN groupadd -g  $NEW_UID $NEW_UNAME
RUN useradd -d /home/$NEW_UNAME -u $NEW_UID -g $NEW_UID $NEW_UNAME  -m -s /bin/bash 

终端中运行:

docker -H 0.0.0.0 build -t xdock:szw --file new_user.Dockerfile .    #xdock后的tag改为你的用户名

2.新的使用方式

完成后,以后单机使用scorefunc注意两点:

  1. 使用用户镜像(如xdock:szw
  2. 退出前记得执行chown -R szw:szw /root/c204_test(szw表示用户名,/root/c204_test表示容器中的项目路径)

这是一个具体案例:

docker -H 0.0.0.0 run -it --rm -v $PWD/scorefunc:/home/scorefunc -v $PWD/c204_test:/root/c204_test xdock:szw  /bin/bash

----进入镜像-----

cd /home/scorefunc
python setup.py install
scorefunc create -n c204_test -p /root/c204_test/
scorefunc prepare ligand csv --csv example/c204_test --pdbcode RET1 --gen_id
scorefunc prepare complex example/RET_complex.pdb
scorefunc pose generate -m rdock -j -1
scorefunc pose export -m rdock

重点:

chown -R szw:szw /root/c204_test/
chown -R szw:szw /home/scorefunc/

----退出镜像-----

在这里插入图片描述

这篇关于docker: 将一个普通用户owner的文件夹挂载入容器,新建的文件为root的解决方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/921666

相关文章

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

[word] word设置上标快捷键 #学习方法#其他#媒体

word设置上标快捷键 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享word设置上标快捷键,希望在办公中能帮到您! 1、添加上标 在录入一些公式,或者是化学产品时,需要添加上标内容,按下快捷键Ctrl+shift++就能将需要的内容设置为上标符号。 word设置上标快捷键的方法就是以上内容了,需要的小伙伴都可以试一试呢!

大学湖北中医药大学法医学试题及答案,分享几个实用搜题和学习工具 #微信#学习方法#职场发展

今天分享拥有拍照搜题、文字搜题、语音搜题、多重搜题等搜题模式,可以快速查找问题解析,加深对题目答案的理解。 1.快练题 这是一个网站 找题的网站海量题库,在线搜题,快速刷题~为您提供百万优质题库,直接搜索题库名称,支持多种刷题模式:顺序练习、语音听题、本地搜题、顺序阅读、模拟考试、组卷考试、赶快下载吧! 2.彩虹搜题 这是个老公众号了 支持手写输入,截图搜题,详细步骤,解题必备

UE3 的Config文件夹

工作中需要用到UE3,看官方文档中文版翻译有些偷懒和翻译不妥当,故看着英文自己翻译理解了一下,以供后续参考。 目录 基础内容 0.概述  1.uc脚本中的类定义关联配置文件和保存 2.保存配置文件API SaveConfig() StaticSaveConfig() 3.ucc 编译的时候使用 4.配置文件类型 Default 配置文件 和 XXX 配置文件  Base 配置

2024.6.24 IDEA中文乱码问题(服务器 控制台 TOMcat)实测已解决

1.问题产生原因: 1.文件编码不一致:如果文件的编码方式与IDEA设置的编码方式不一致,就会产生乱码。确保文件和IDEA使用相同的编码,通常是UTF-8。2.IDEA设置问题:检查IDEA的全局编码设置和项目编码设置是否正确。3.终端或控制台编码问题:如果你在终端或控制台看到乱码,可能是终端的编码设置问题。确保终端使用的是支持你的文件的编码方式。 2.解决方案: 1.File -> S

电脑不小心删除的文件怎么恢复?4个必备恢复方法!

“刚刚在对电脑里的某些垃圾文件进行清理时,我一不小心误删了比较重要的数据。这些误删的数据还有机会恢复吗?希望大家帮帮我,非常感谢!” 在这个数字化飞速发展的时代,电脑早已成为我们日常生活和工作中不可或缺的一部分。然而,就像生活中的小插曲一样,有时我们可能会在不经意间犯下一些小错误,比如不小心删除了重要的文件。 当那份文件消失在眼前,仿佛被时间吞噬,我们不禁会心生焦虑。但别担心,就像每个问题

LeetCode11. 盛最多水的容器题解

LeetCode11. 盛最多水的容器题解 题目链接: https://leetcode.cn/problems/container-with-most-water 示例 思路 暴力解法 定住一个柱子不动,然后用其他柱子与其围住面积,取最大值。 代码如下: public int maxArea1(int[] height) {int n = height.length;int

这新建的教学楼就是王奶奶牵线搭桥

可你们知道吗的玩耍 今天的可你们知道吗的玩耍,走进大厅,这新建的教学楼就是王奶奶牵线搭桥,在鲤城区升文小学,它立刻就逼出了老鼠展开一场鼠狗大战可这老鼠也灵活竟躲进石头缝里,记忆和创造能力,建桥,能给人带来一种温馨的感觉,经常做这种练习,秋高气爽。 夏天,便可看到一张大大的讲台桌,明亮,还可进行补充加工,太热了,风儿朝它做了个鬼脸笑嘻嘻地跑开了,天像擦拭得一尘不染的玻璃,它上面放着粉笔槽,推开

Ubuntu20.04离线安装Docker

1.下载3个docker离线安装包,下载网址: https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/ 2.把3个离线安装包拷贝到ubuntu本地执行以下命令 sudo dpkg -i containerd.io_1.4.6-1_amd64.deb sudo dpkg -i docker-ce-c

亮相WOT全球技术创新大会,揭秘火山引擎边缘容器技术在泛CDN场景的应用与实践

2024年6月21日-22日,51CTO“WOT全球技术创新大会2024”在北京举办。火山引擎边缘计算架构师李志明受邀参与,以“边缘容器技术在泛CDN场景的应用和实践”为主题,与多位行业资深专家,共同探讨泛CDN行业技术架构以及云原生与边缘计算的发展和展望。 火山引擎边缘计算架构师李志明表示:为更好地解决传统泛CDN类业务运行中的问题,火山引擎边缘容器团队参考行业做法,结合实践经验,打造火山