请教一下 docker 大佬,如何给一个正在运行的 docker 容器挂上我宿主机的一块硬盘分区? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lovejunjie1
V2EX    Docker

请教一下 docker 大佬,如何给一个正在运行的 docker 容器挂上我宿主机的一块硬盘分区?

  •  
  •   lovejunjie1 2019-04-03 11:21:03 +08:00 6615 次点击
    这是一个创建于 2382 天前的主题,其中的信息可能已经有所发展或是发生改变。
    详细情况是这样的,最近用 docker 装了一个 nextcloud,默认装完是跟我 ubuntu 系统同一块硬盘的,太小了。

    我想把我一张空的机械硬盘(已经 mount 到了 /mnt/dataStore 上了),挂给 docker 里我 nextcloud 的容器(容器名字叫 mycloud )上。

    于是我看到有-v 的指令。似乎是可以用的。

    所以我先 su root

    准备把 docker 的容器 stop 掉。但是说权限不够,拒绝操作。

    docker kill mycloud 也不行。

    所以求助一下各位大佬,有没有什么办法停掉 docker 的这个容器,让我重新 docker run -v 一下。

    或者在 docker 容器 run 的状态下把硬盘空间挂上去呀 ?
    lovejunjie1
        1
    lovejunjie1  
    OP
       2019-04-03 11:28:25 +08:00
    http://i64.tinypic.com/28rukg.jpg
    补一个截图,这里面有我尝试的命令还有报错信息
    pipixia
        2
    pipixia  
       2019-04-03 11:54:04 +08:00 via Android
    docker rm -f 强制移除
    002jnm
        3
    002jnm  
       2019-04-03 12:08:12 +08:00 via Android
    docker compose
    andylsr
        4
    andylsr  
       2019-04-03 12:12:50 +08:00 via Android
    试一下重启 docker,然后重新 run
    hilbertz
        5
    hilbertz  
       2019-04-03 12:13:55 +08:00
    把 AppArmor 关掉
    momocraft
        6
    momocraft  
       2019-04-03 12:25:15 +08:00
    可以把现在的 container 做成 image (docker commit),重新 run

    你还需要考虑现在的数据怎样转移等问题
    liwufan
        7
    liwufan  
       2019-04-03 12:41:05 +08:00 via iPhone
    apt upgrade 然后重启一下试试
    lovejunjie1
        8
    lovejunjie1  
    OP
       2019-04-03 12:43:24 +08:00
    @pipixia @002jnm @andylsr @hilbertz @momocraft 感谢各位,我先从能保持容器的建议开始尝试一下
    RickyHao
        9
    RickyHao  
       2019-04-03 12:44:26 +08:00 via Android   1
    我记得 docker 好像是不能给已有容器附加 volume 的(也许是我不知道)
    推荐用 nextcloud 的官方镜像,把配置目录、data 目录和一些它推荐挂载的目录挂载出来,然后每次升级只要更新镜像重建容器就行了,配置和数据不会丢。
    [刚好之前写了个教程]( https://rickyhao.com/2019/01/13/使用 docker 快速搭建 nextcloud/)
    lovejunjie1
        10
    lovejunjie1  
    OP
       2019-04-03 12:47:55 +08:00
    @002jnm docker compose 之前有了解过一下。目前知道了文件应该放在哪里,docker compose 也装好了。还不知道如何编,和怎么用……目前还没研究明白
    lovejunjie1
        11
    lovejunjie1  
    OP
       2019-04-03 12:48:54 +08:00
    @RickyHao 噢!!!谢谢大佬,感谢大佬的分享精神。
    shingle
        12
    shingle  
       2019-04-03 13:12:17 +08:00
    如果你之前 docker run 时没有挂载任何数据,你可以先用 docker cp 命令把数据文件夹拷贝到宿主机,具体哪些数据文件夹
    nextcloud 的官方镜像里有说明哪些是持久数据需要挂载的
    https://hub.docker.com/_/nextcloud#persistent-data

    最后可以学习一下 docker-compose 管理,就不用每次改参数重新删除在 run 了
    BlackHole1
        13
    BlackHole1  
    PRO
       2019-04-03 17:55:33 +08:00 via Android
    直接 docker rm -f 强制删除,重新 run 一个就好
    lovejunjie1
        14
    lovejunjie1  
    OP
       2019-04-03 23:25:02 +08:00
    @hilbertz 感谢提醒,关掉了 apparmor 之后可以正确 stop 和 rm 了


    @BlackHole1 谢谢指导,已经 run 了一个新的了。旧的也成功 rm 掉了


    @shingle 谢谢大佬提供的帮助,我用笨办法实现了我的效果。不过我也觉得有必要学习一下 compose 的用法。感谢感谢
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2763 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 14:51 PVG 22:51 LAX 07:51 JFK 10:51
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86