iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何在Docker容器中挂载NFS共享目录
  • 918
分享到

如何在Docker容器中挂载NFS共享目录

2023-06-06 10:06:55 918人浏览 八月长安
摘要

这篇文章给大家介绍如何在Docker容器中挂载NFS共享目录,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Dockerfile内容如下:FROM ubuntu:16.04LABEL maintain

这篇文章给大家介绍如何在Docker容器中挂载NFS共享目录,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Dockerfile内容如下:

FROM ubuntu:16.04LABEL maintainer="FengBinGChun fengbingchun@163.com" \   version="1.0" \   description="dockerfile test"RUN dep_items='git g++-5 nfs-common make' \  && apt-get update \  && apt-get install -y $dep_items \  && ln -s /usr/bin/g++-5 /usr/bin/g++ \  && ln -s /usr/bin/gcc-5 /usr/bin/gcc \  && mkdir -p /mnt/nfs \  && rm -rf /var/lib/apt/lists/*

构建镜像,执行以下命令后会成功生成名字为fengbingchun/ubuntu:16.04的镜像:

docker build -t fengbingchun/ubuntu:16.04 .

通过挂载主机目录,新建容器test,执行以下命令中的一条,推荐使用第一条:

docker run --cap-add sys_admin -it -P --name test --mount type=bind,source=e:\GitCode\docker,target=/home/fengbingchun fengbingchun/ubuntu:16.04 /bin/bashdocker run --privileged=true -it -P --name test --mount type=bind,source=e:\GitCode\docker,target=/home/fengbingchun fengbingchun/ubuntu:16.04 /bin/bash

在容器内依次执行如下命令进行挂载,假设nfs服务器ip为10.107.2.1,共享目录为shared:

/etc/init.d/rpcbind startmount -t nfs 10.107.2.1:/shared /mnt/nfs

创建软链接,并将cmake可执行文件路径加入环境变量,依次执行如下命令:

ln -s /mnt/nfs/Ubuntu-16.04/ /usr/local/toolchainsecho "export PATH=/usr/local/toolchains/bin:$PATH" >> /etc/profilesource /etc/profile

因此创建镜像时并没有安装cmake,执行source命令后,执行cmake --version可看到cmake版本相关信息,如下图所示:

如何在Docker容器中挂载NFS共享目录

然后在容器内,cd到/home/fengbingchun目录下,clone Messy_Test执行以下命令:

git clone https://GitHub.com/fengbingchun/Messy_Test

然后cd到Messy_Test/prj/linux_cmake_CppBaseTest目录下,依次执行如下命令:

./build.sh./build/CppBaseTest

执行结果如下图所示,说明通过Dockerfile构建的镜像,并在容器内挂载NFS共享目录后,通过共享目录中的cmake可正常编译执行Messy_Test:

如何在Docker容器中挂载NFS共享目录

在容器内也可查看NFS服务器共享了哪些目录,执行以下命令:

showmount -e 10.107.2.1

保存镜像fengbingchun/ubuntu:16.04到tar包,执行以下命令:

docker save -o ubuntu_16.04.tar fengbingchun/ubuntu:16.04

将ubuntu_16.04.tar拷贝到ubuntu系统下,从tar包加载一个镜像,执行以下命令:

docker load -i ubuntu_16.04.tar

然后执行windows上类似的操作,在新创建的容器test中编译、执行Messy_Test,依次执行如下命令:

docker run --privileged=true -it -P --name test --mount type=bind,source=/home/xxxx/Disk/GitHub/docker,target=/home/fengbingchun fengbingchun/ubuntu:16.04 /bin/bash/etc/init.d/rpcbind startmount -t nfs 10.107.2.1:/shared /mnt/nfsln -s /mnt/nfs/Ubuntu-16.04/ /usr/local/toolchainsecho "export PATH=/usr/local/toolchains/bin:$PATH" >> /etc/profilesource /etc/profilecd /home/fengbingchun/git clone Https://github.com/fengbingchun/Messy_Testcd Messy_Test/prj/linux_cmake_CppBaseTest/./build.sh./build/CppBaseTest

执行结果如下图所示:说明在Windows上生成的镜像打包后,在Ubuntu上load后可正常使用:

如何在Docker容器中挂载NFS共享目录

注意:

(1).在ubuntu上,创建容器时要使用"--privileged=true",否则执行挂载时会报"mount.nfs: access denied by server while mounting 10.107.2.1:/shared"的错误;

(2).在Windows上有时在容器中会有卡死的现象,可删除此容器,然后再新建容器.

关于如何在Docker容器中挂载NFS共享目录就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: 如何在Docker容器中挂载NFS共享目录

本文链接: https://www.lsjlt.com/news/246426.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在Docker容器中挂载NFS共享目录
    这篇文章给大家介绍如何在Docker容器中挂载NFS共享目录,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Dockerfile内容如下:FROM ubuntu:16.04LABEL maintain...
    99+
    2023-06-06
  • linux怎么挂载nfs共享目录
    在Linux中,可以使用以下步骤挂载NFS共享目录:1. 首先,确保你已经安装了`nfs-utils`软件包。如果没有安装,可以使用...
    99+
    2023-09-14
    linux
  • Linux下如何挂载NFS共享
    这篇文章主要介绍了Linux下如何挂载NFS共享,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。NFS是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP...
    99+
    2023-06-27
  • Linux系统如何挂载NFS共享
    这篇文章主要介绍Linux系统如何挂载NFS共享,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!NFS是Network File System的缩写及网络文件系统。NFS主要功能是通过局域网络让不同的主机系统之间可以共...
    99+
    2023-06-28
  • docker中windows10共享目录挂载失败怎么办
    这篇文章主要介绍docker中windows10共享目录挂载失败怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!起因在执行docker脚本的时候,出现不能创建容器的错误。如下所示:Cannot create co...
    99+
    2023-06-14
  • Linux如何配置nfs共享目录
    要在Linux上配置NFS共享目录,需要按照以下步骤进行操作:1. 确保NFS服务器已经安装:使用以下命令安装NFS服务器软件包:`...
    99+
    2023-09-27
    linux
  • 怎么在docker中查看容器的挂载目录
    这篇文章将为大家详细讲解有关怎么在docker中查看容器的挂载目录,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。方法一docker inspect -f &qu...
    99+
    2023-06-14
  • docker windows10 共享目录挂载失败的解决方案
    起因 在执行docker脚本的时候,出现不能创建容器的错误。 如下所示: Cannot create container for service xxx: b'Drive has ...
    99+
    2024-04-02
  • 怎么在LINUX系统中使用autofs挂载NFS共享
    怎么在LINUX系统中使用autofs挂载NFS共享?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。LINUX系统中使用autofs挂载NFS共享的方法大多数 Linux 文件系...
    99+
    2023-06-13
  • docker 查看容器的挂载目录操作
    只显示Docker容器挂载目录信息 docker inspect --format "{{.Config.Volumes}}" 369a1376f78c 显示Docker容器...
    99+
    2024-04-02
  • 如何使用Docker将容器目录挂载到主机上
    今天小编给大家分享一下如何使用Docker将容器目录挂载到主机上的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、基本介绍这...
    99+
    2023-06-30
  • Linux中如何挂载windows共享
    这篇文章主要介绍“Linux中如何挂载windows共享”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Linux中如何挂载windows共享”文章能帮助大家解决问题。在我们开始之前要实现这个,你需要...
    99+
    2023-06-27
  • docker如何对已经启动的容器添加目录映射(挂载目录)
    目录1. 背景2. 开始新增挂载目录1.查看容器存放目录2.查看要新增挂载的容器id3.进入要新增文件夹挂载的目录4.关闭容器、关闭docker5.修改config.v2.json6...
    99+
    2023-02-21
    docker增加目录映射 docker容器目录映射 docker映射容器目录到宿主机
  • NFS客户端挂载nfs服务器共享目录时的报错及解决办法:mount.nfs: access denied by server while mounting
    客户端挂载nfs共享目录时的报错信息:mount.nfs: access denied by server while mounting 192.168.41.191:/nfsfile NFS服务器 ...
    99+
    2023-09-02
    服务器 运维 linux centos
  • 怎么在Docker中查看容器挂载点
    要查看Docker容器的挂载点,可以使用以下命令:1. 首先,使用`docker ps`命令列出正在运行的容器,找到要查看挂载点的容...
    99+
    2023-09-04
    Docker
  • Docker中容器文件拷贝及目录挂载的方法是什么
    本篇内容介绍了“Docker中容器文件拷贝及目录挂载的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Docker:容器文件拷贝目标...
    99+
    2023-07-05
  • 使用Docker将容器目录挂载到主机上的实现方法
    目录一、基本介绍二、将容器目录挂载到主机一、基本介绍 这里我们主要介绍 Docker 里的一个命令,叫做 --mount,其本质上来说和 --volume 命令并没有太大区别,因为这...
    99+
    2024-04-02
  • 如何使用docker inspect命令查看目录挂载信息
    这篇文章给大家分享的是有关如何使用docker inspect命令查看目录挂载信息的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。查看目录挂载信息输入如下命令, 则会输出容器的Mo...
    99+
    2024-04-02
  • 如何在docker容器中部署Web项目
    小编给大家分享一下如何在docker容器中部署Web项目,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!系统选用Centos或者Ubuntu都可以。 大致...
    99+
    2023-06-04
  • docker内的容器如何与宿主机共享IP的方法
    目录问题原因解决问题 有个项目里面需要将一些服务打包到docker镜像中,打包完成后,发现有些服务有问题,主要集中在一些端侧设备接入用的服务,主要是工业相机。相机扫描不到。 原因 当...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作