展开

关键词

Docker永久挂载本地目录

有时我们的docker需要用到本地的数据集,虽然我们可以用docker cp的方式进行拷贝,但是通常如果数据集很大,所以直接拷贝到容器里显然不现实,所以我们需要把数据集的路径挂载到容器。 但是普通的docker mount命令又有一个缺点,就是每次开启这个容器都得输这个命令,所以要想长期挂载这个目录下面的方法: 首先创建一个数据卷 命令: docker run -v 需挂载目录的路径:容器挂载路径 --name 数据卷名字 容器名字 /bin/bash 例子: docker run -v /home/dock/Downloads:/usr/Downloads --name dataVol ubuntu64 /bin/bash 之后只需要运行下面命令就可以运行容器了 命令:docker run -it --volumes-from 数据卷名字 容器名字 /bin/bash 例子: docker run - docker run -it -v 原路径:目的路径 -v 原路径:目的路径 容器名 上面的-v表示需要挂载的源文件(夹)路径和目的路径,你需要挂载多少个路径就加多少个-v。

1.6K20

docker:(3)docker容器挂载宿主主机目录

有一项重要的参数 -v 目录挂载,就是让容器内部目录和宿主主机目录关联起来,这样就可以直接操作宿主主机目录而不用再操作具体容器了 比如在2中,我们要发布一个war包,是通过   sudo docker 肯定有, 没有 我就不会在这里写这些玩意儿了 sudo docker run -p 8822:8080 --name tomcat_xiao_volume -v /home/xiaochangwei/test tomcat:v1   -p     不解释   --name   不解释    -v /home/xiaochangwei/test:/usr/local/tomcat/webapps 就是将宿主主机目录和容器目录建立映射关系 ,冒号前为宿主主机目录,冒号后为容器对应目录   执行上面的命令启动,这次启动就和上一篇文章中的启动日志有点差异了:差异就在容器启动时,tomcat加载了我们映射的宿主主机目录中的war包 xiaochangwei ,有发布需求的时候,直接将war包拷贝到宿主主机目录即可,容器叫什么名字,对应的容器的发布路径在哪里就与发布者无关了 下一篇文章我将讲解和jekins集成,让代码编译好后自动部署到docker中 2015

1.3K10
  • 广告
    关闭

    老用户专属续费福利

    云服务器CVM、轻量应用服务器1.5折续费券等您来抽!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    docker启动mysql指定挂载目录时无法启动

    运行环境: 操作系统:centos docker:1.13.1 docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d :/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 执行上面命令启动mysql时无法启动,使用 docker read directory '/var/lib/mysql/': Permission denied 解决方案: Centos7安全Selinux禁止了一些安全权限,导致mysql和mariadb在进行挂载 run中加入 --privileged=true 给容器加上特定权限,如下 docker run --privileged=true -p 3306:3306 --name mymysql -v $ PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 2.关闭selinux csdn 3.在selinux添加规则,修改挂载目录

    28110

    Docker配置mysql以及宿主机容器目录挂载

    Docker配置mysql以及宿主机容器目录挂载 在之前的docker 挂载中主要说明了创建数据卷并挂载的方式。现在我们做一种创建普通目录并进行挂载的方式。 基于mysql镜像的拉取并进行配置。 首先拉取mysql镜像 docker pull mysql:8.0.29 这样直接拉取完毕后,你再去查看下目前投的镜像 docker images 你看这个版本的镜像就有了 因为mysql 一定要安排好你目录的位置。我的在根目录下直接创建了这样的分级文件夹。创建的命令就不说了。 那么我们写一段命令,比较长,但是并不复杂。 -v 这里后面我们就是做了一个宿主目录和容器目录挂载映射。包括了配置,日志记录,数据存储等等。 distinct * from stu2 where name = "李自成"; -- 条件查询 select * from stu2 where not (name ="李自成"); 然后测试后我们去看我们之前挂载目录文件有没有新的数据出现

    9420

    Docker -v 对挂载目录没有权限 Permission denied

    1.问题 今天在使用docker挂载redis的时候老是报错 docker run -v /home/redis/redis.conf:/usr/local/etc/redis/redis.conf - exec -it redis2 /bin/bash 然后进入挂载的文件夹下 cd /usr/local/etc/redis 发现报错: cannot open directory ' selinux然后再打开 [root@localhost tomcat]# setenforce 0 [root@localhost tomcat]# setenforce 1 3.添加linux规则,把要挂载目录添加到 selinux白名单 更改安全性文本的格式如下 chcon [-R] [-t type] [-u user] [-r role] 文件或者目录 选顷不参数: -R :该目录下的所有目录也同时修改; 挂载的一些经验 4.1 容器目录不可以为相对路径 4.2 宿主机目录如果不存在,则会自动生成 4.3 宿主机的目录如果为相对路径呢 可以通过docker inspect命令,查看容器“Mounts”那一部分

    9.2K21

    Docker具名挂载和匿名挂载

    ---- 结论 匿名挂载:卷挂载只写容器里面的路径,不写容器外的路径 如何确定是匿名挂载还是具名挂载,还是指定路径挂载 -v 容器内路径 #匿名挂载 -v 卷名:容器内路径 #具名挂载 -v /宿主内路径 :容器内路径 #指定路径挂载 ---- 1、匿名挂载 # docker run -d -P --name nginx01 -v /etc/nginx nginx //端口映射-p(小写)、-P(大写 ---- 2.具名挂载 具名挂载:就是挂载的卷定义一个自己的名字,可以方便的查找 # docker run -d -P --name nginx02 -v Bertram:/etc/nginx nginx # docker volume ls DRIVER VOLUME NAME ..... local Bertram 查看卷所对应的路径 # docker 容器内的卷,没有指定目录的情况下都是在 '/data/docker/volumes’目录下 这里默认的存储路径是修改过的,如何修改大家可以参考这篇文章 我们通过具名挂载以方便的找到我们的一个卷,大多数使用的都是具名挂载

    17810

    Docker数据挂载

    Docker数据管理 在容器中管理数据主要有两种方式: 数据卷(Volumes) 挂载主机目录(Bind mounts) ? 即使容器被删除 注意:数据卷的使用,类似于Linux下目录的使用或文件进行mount,镜像中的被指定为挂载点的目录中的文件会隐藏掉,能显示看的是挂载的数据卷。 docker run 命令的时候,使用—mount 来将数据卷挂载到容器,在一次 docker run 中可以挂载多个数据卷。 无主的数据卷可能会占据很多空间,可以使用以下命令进行清理: docker volume prune 挂载主机目录 使用 —mount 可以指定挂载一个本地主机的目录到容器中去: docker run - 使用 -v 参数时如果本地目录不存在,Docker会自动创建 使用 —mount 参数时,如果本地目录不存在,Docker会报错 Docker挂载主机目录的默认权限是读写,用户也可以通过增加 readonly

    1.5K20

    轻松挂载远程目录 | sshfs

    前言 最近nfs远程挂载目录有点问题,暂时懒得搞,但是方法不但仅仅只有nfs的,比如解决方案还有sshfs,sshfs远程挂载目录基于ssh,特点那就是简洁又安全。 ---- 不多说了! 安装 ➜ ~ sudo apt-get install sshfs ---- 轻松使用 挂载远程目录 sshfs $user@$host:$remote_dir_path $local_dir_path 卸载远程挂载目录 ➜ ~ fusermount $local_dir_path 此时的你也许会问,要输入密码,麻烦,这可是基于ssh的,可以免秘钥的,当然还可以这么做 举个例子哈 ➜ ~ sshfs AlicFeng mount dir PS:对于其它命令参数可以查看help或者官方API ---- 对于我仅仅挂载远程还是不够的,我需要将文件同步,那我再次就推荐一个轻量级比较&&同步的工具meld。

    1.1K50

    nfs共享目录挂载

    公司需求: 共享静态文件,比如discuz需要共享的目录是 data/attachment,dedecms需要共享upload。 192.168.14.103:/data/wwwroot/www.dedecms.com/uploads/ /data/wwwroot/www.dedecms.com/uploads/ 从web server 查看挂载 admin@Centos-1 uploads]$ df -h 文件系统 容量 已用 可用 已用% 挂载点 思路如下: 保证连接同一个数据库,使用不同的表前缀,然后再把整站的站点目录共享出去(只需要配置vhost即可),是不是就有这种功能了呢?

    60840

    linux挂载windows共享目录

    1、打开guest帐号,guest帐号默认情况下是不启用的     进入控制面板->用户帐户->管理其他帐户->激活Gust用户 2,右击共享目录,属性->共享->共享->添加Guest用户 3.  本地帐户的共享和安全模式”——“本地安全设置”——“仅来宾 - 本地用户以来宾身份验证” 6.我的电脑-右击,管理->本地用户和组->guest->勾选密码永不过期和 用户不能更改密码 创建一个linuxshare共享目录 然后我们挂载到linux系统上 挂在命令 sudo mount -t cifs -o username=guest,gid=501,uid=501,iocharset=utf8 -l //192.168.7.46

    1.6K20

    Docker入门-数据挂载

    Docker数据管理 在容器中管理数据主要有两种方式: 数据卷(Volumes) 挂载主机目录(Bind mounts) ? ,即使容器被删除 注意:数据卷的使用,类似于Linux下对目录或文件进行mount,镜像中的被指定为挂载点的目录中的文件会隐藏掉,能显示看的是挂载的数据卷。 启动一个挂载数据卷的容器: 在用docker run命令的时候,使用--mount标记来将数据卷挂载到容器里。 无主的数据卷可能会占据很多空间,要清理请使用以下命令 docker volume prune 挂载主机目录 使用--mount标记可以指定挂载一个本地主机的目录到容器中去 # 方法一docker run Docker挂载主机目录的默认权限是读写,用户也可以通过增加readonly指定为只读。

    71810

    sshfs基于ssh挂载远程目录

    如何通过ssh来挂载远程目录?需要安装fuse-sshfs包,这个包在epel中提供。使用fuse-sshfs包提供的sshfs工具可以基于ssh直接挂载远程目录,不用像NFS一样还要export。 注意:只能挂载远程目录,像普通文件、块设备(如/dev/sda2)等无法挂载。 当你安装 SSHFS 包之后,你需要创建一个挂载目录,在这儿你将要挂载你的远程文件系统。 例如,我们在 /mnt/tecmint 下创建挂载目录。 视你的情况挂载目录可以是任何目录。 下面的命令行将会在本地的 /mnt/tecmint 目录挂载一个叫远程的一个 /home/tecmint 目录

    4020

    Centos安装sshfs实现挂载目录

    而这里我想要介绍另外一个功能,那就是结合 sshfs 这个工具可以把远程主机的文件系统映射到本地主机上,透过 SSH 把远程文件系统挂载到本机上,这样我们可以不必使用 scp 工具就可以做到直接复制及删除远程主机的文件了 sshfs 是基于 FUSE 构建的 SSH 文件系统客户端程序,通过它远程主机的配置无需作任何改变,就可以透过 SSH 协议来挂载远程文件系统了,非常方便及安全。 noarch.rpm 二、清理YUM缓存 [root@tokyo /]# yum clean all 三、使用YUM安装SSHFS [root@tokyo /]#  yum install fuse-sshfs 四、挂载远程目录 1.挂载服务器8.8.8.8上面的/data/tmp目录到本机的/tmp目录下,使用-o指定参数,port=ssh的端口号。 [root@tokyo /]#  sshfs -o port=2200 root@8.8.8.8:/data/tmp /tmp root@8.8.8.8's password: 2.查看挂载结果 [root

    1.7K60

    Docker入门与实践:两种Docker数据管理方法——数据卷、挂载主机目录

    Docker入门与实践:两种Docker数据管理方法——数据卷、挂载主机目录 Dcoker容器内管理数据有两种方式: 数据卷(Volumes); 挂载主机目录(Bind mounts)。 Docker镜像挂载目录中的文件会被隐藏掉,而数据卷挂载点中的文件则会显示出来。 1.2 Docker启动一个挂载数据卷的容器 在使用docker run命令启动docker容器时,使用--mount标记想要挂载的数据卷,而且在启动docker容器时,可以一次性挂载多个数据卷。 二、挂载主机目录 同样的,我们可以使用--mount标记来指定一个本地主机的目录到容器中,指令如下所示: docker run -d -P \ --name web \ --mount webapp目录,不然会出现如下所示的错误: 上面的指令与挂载数据卷几乎一样,唯一不同是--mount选项后面的内容。

    9420

    Docker 数据挂载

    Docker 数据管理 ---- 在容器中管理数据主要有两种方式: 数据卷(Volumes) 挂载主机目录(Bind mounts) ? 2. 数据卷 ---- 数据卷是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性: 数据卷可以在容器之间共享和重用。 对数据卷的修改会立马生效。 注意:对数据卷的使用,类似于 Linux 下对目录或文件进行 mount,镜像中的被指定为挂载点的目录中的文件会隐藏掉,能显示看的是挂载的数据卷。 Docker 中提供了两种挂载方式:-v 和 --mount 3. 挂载主机目录 ----

    12210

    使用mount来挂载设备到目录

    一般情况下直接mount 设备路径 目录路径,就可以了。umount 设备名,就可以卸载这个设备了 使用lsblk -f可以查看挂载的设备,以及这些设备的文件系统。 Elements 2A629C45629C17A1 /media/tao/Elements 当挂载目录的时候,如果所被挂载目录有文件数据, 那么挂载完以后原来的数据就不见了,进入这个目录会进入我的移动硬盘,当卸载掉以后原来的文件又出现了。 挂载的时候那个目录必须存在,不存在会报错。 我购买了一个云硬盘,然后使用mount命令挂载到了一个目录下,并且修改了/etc/fstab,让它自动去挂载。但是有一天,我忘记了续费云硬盘,云硬盘就访问不到了。

    81030

    Linux7 挂载 nfs 远程目录

    ☀️ 介绍 Linux 系统下,如果想要将 A 机器的目录挂载到 B 机器,让 B 机器访问,可以通过 NFS 将目录挂载到 B 机器! 本文介绍下如何配置 NFS 远程目录: 机器A: 服务端,IP:10.211.55.100,假设有有一个目录 /backup 机器B: 客户端,IP:10.211.55.101,需要访问 A 服务器的 1、创建挂载目录 mkdir /backup 可以与服务端挂载目录不同名。 .* 3、mount 挂载远程目录 mount -t nfs -o rw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,tcp 10.211.55.100 OK,至此已经配置完成,通过 df -h 就可以查看已挂载的 NFS 目录啦! 小BUG 最后再分享一个很坑的小bug吧,需要注意 ????

    21220

    服务器之间挂载共享磁盘目录

    两台服务器之间挂载共享磁盘目录 服务端:x.x.1.111 客户端:x.x.1.112 需要的安装包 链接:https://pan.baidu.com/s/1YZlt4Ub_4muYQ0HTuFvJtg rw 该主机对该共享目录有读写权限 root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户 no_root_squash 客户机用root访问该共享文件夹时 从chkconfig管理中删除mount.sh chkconfig --del mount.sh #查看chkconfig管理 chkconfig --list mount.sh 备注:用以上方式挂载不同服务器的共享目录磁盘亲测可用 备注:用常规方式修改/etc/fstab文件只适合有且仅有一台服务器进行挂载磁盘,不适合挂载多个其他服务器的共享目录磁盘,我和毛哥交流过,亲测不可用。 mnt目录在没有卸载的情况下,服务器侧把这个目录移除了,才会出现这样的错误提示。

    10630

    Samba — win10 挂载 Ubuntu 18.04 目录

    username 重启samba /etc/init.d/smbd restart 获取Ubuntu的ip ifconfig  查看 smaba 用户 pdbedit -L Win 10 挂载 Win + R 快捷键打开运行窗口,输入 \\192.168.10.12(刚刚获取的IP) 链接到共享文件夹 Linux 挂载 安装 samba-client # Ubuntu apt install Service (Samba 4.9.5-Debian) samba Disk Home Directories 在上一步查看到可用的资源后,通过使用该命令直接进入要使用的资源目录内部 Thu Jan 6 15:34:19 2022 524032000 blocks of size 1024. 520345292 blocks available smb: \> exit 挂载资源文件夹到本地

    4620

    远程挂载 NFS 共享目录引发死机问题

    周一上班,在集群登陆节点使用df -Th查看磁盘使用情况,发现df命令卡死,查看挂载目录的时候也卡死,因此写下本文警示自己。 环境描述 A 机器(192.168.1.103), B 机器上挂载了 A 机器上的 hiseq3000 目录到本机的 /mnt/hiseq3000 目录(命令:mount -t nfs 192.168.1.103 有人说为了避免这个问题,挂载的时候要加和上 soft 选项。 (没亲自试过) 而导致此问题的原因是在使用 nfs 挂载的时候使用的是默认的 hard-mount 挂载功能,当服务端停止服务时,客户端加载 nfs 不成功,就会不断的重试,直到服务端恢复之前,挂载目录都会出现卡死的情况 因此需要在挂载时更换为 soft-mount,使用此功能挂载后,当服务端出现停止服务的情况时,会重试 retry 设定的固定次数。

    53320

    相关产品

    • 容器服务

      容器服务

      腾讯云容器服务(Tencent Kubernetes Engine ,TKE)基于原生kubernetes提供以容器为核心的、高度可扩展的高性能容器管理服务。腾讯云容器服务完全兼容原生 kubernetes API ,扩展了腾讯云的云硬盘、负载均衡等 kubernetes 插件,为容器化的应用提供高效部署、资源调度、服务发现和动态伸缩等一系列完整功能,解决用户开发、测试及运维过程的环境一致性问题,提高了大规模容器集群管理的便捷性,帮助用户降低成本,提高效率。容器服务提供免费使用,涉及的其他云产品另外单独计费。

    相关资讯

    热门标签

    扫码关注腾讯云开发者

    领取腾讯云代金券