加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

docker – 卷与卷之间有什么区别?

发布时间:2020-12-16 03:31:13 所属栏目:安全 来源:网络整理
导读:我看到码头组合模式,但我很困惑.制作组合容器的最佳方式是什么? 何时应该使用link或 什么时候应该使用volume_from,volumes 1个app-db-data app: image: someimage link: - db // data volume container name db: image: mysql volumes_from: - data // data

我看到码头组合模式,但我很困惑.制作组合容器的最佳方式是什么?
何时应该使用link或
什么时候应该使用volume_from,volumes

1个app-db-data

app:
    image: someimage
    link:
        - db // data volume container name 
db:
    image: mysql
    volumes_from:
        - data // data volume name
data:
    image: someimage
    volumes:
        - {host data}:{guest data}

2个应用数据库数据

app:
    image: someimage
    link:
        - db // data volume container name 
db:
    image: mysql
    volumes:
        - data // data file name

应用

1个应用服务数据

app:
    image: someimage
    volumes_from:
        - service // service container name 
service:
    image: mysql
    volumes_from:
        - data // image container name
data:
    image: someimage
    volumes:
        - {host data}:{guest data} 

2个应用服务数据

app:
    image: someimage
    volumes_from:
        - service // service container name 
service:
    image: mysql
    volumes:
        - data // mounted file

谢谢

最佳答案
Link和volumes_from是不同的概念.当您需要连接(通过网络)两个容器时,将使用链接.在这种情况下,如果要将App连接到数据库,则通过使用链接来实现此操作的方式是因为应用程序使用端口和主机连接到数据库(而不是文件系统上的目录).

卷和卷_from的区别在于,第一个仅声明Docker将生成持久性或主机:guest挂载的卷,但是volume_from告诉Docker使用已在另一台主机上声明的卷(使其可供该主机使用).

在你提出的4个案例中,我认为第一和第二个是好的选择.在第一个你创建一个仅数据的容器,并使mysql容器使用它.在第二种情况下,数据和mysql容器是一样的.

Links和volumes在docker文档中完美解释.

希望有帮助

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读