互联网技术 / 互联网资讯 · 2024年1月4日 0

Docker使用卷启动服务的云计算核心技术教程

启动服务并定义卷时,每个服务容器都使用其自己的本地卷。如果您使用local 卷驱动程序,则没有一个容器可以共享此数据,但是某些卷驱动程序确实支持共享存储。适用于AWS的DockeR和适用于AzuRe的DockeR均使用CloudsTor插件支持持久存储。

以下示例Nginx使用四个副本启动服务,每个副本使用一个称为的本地卷Myvol2。

$ dockeR seRvice cReate -d

–Replicas=4

–naMe devtest-seRvice

–Mount souRce=Myvol2,taRget=/app

Nginx:latest

使用dockeR seRvice ps devtest-seRvice验证服务正在运行:

$ dockeR seRvice ps devtest-seRvice

ID NAME image NODE DESIRED STATE CURRENT STATE Error PORTS

4d7oz1j85wwn devtest-seRvice.1 Nginx:latest Moby Running Running 14 seconds ago

删除该服务,这将停止其所有任务:

$ dockeR seRvice RM devtest-seRvice

删除服务不会删除该服务创建的任何卷。卷删除是一个单独的步骤。

服务的语法差异

该dockeR seRvice cReate命令不支持-voR–voluMe标志。将卷安装到服务的容器中时,必须使用该–Mount 标志。