繁体   English   中英

永久Docker卷

[英]Persistent Docker volume

我正在尝试构建Apache WebDAV私有云服务器。

我所有的文件都在/ usr / John /目录中,我可以将该位置挂载到供容器使用的位置。 问题在于,我还将通过该服务器添加新文件,但是无论如何,它们都只保留在容器中。 有没有办法在主机目录(/ usr / John /)中也反映相同的新文件?

我可以做一个经常性的工作来进入这个容器,并将所有文件CP到主机目录,但这不是一个很好的解决方案。

使用泊坞窗卷。 容器生成的所有持久性数据将保存到var/lib/docker/volumes 如果您使用的是docker-compise,则可以执行以下操作。 在这里,我有3卷,我将其命名为tomcat-datahost-uploadtomcat-webapps 在这里,我放入tomcat-data/home/foo/upload/usr/local/tomcat/webapps都将存储在var/lib/docker/volumes的主机上。 因此,即使容器发生故障并启动另一个容器,这些目录中的所有数据也将保留。 如果您有任何疑问,请告诉我。

您还可以将装载主机目录直接绑定到docker容器上。 如果您有任何疑问,请告诉我

version: '3.2'
services:
  tomcat:
    image: "ciena/tomcat"
    volumes:
      - tomcat-data:/tomcat-data
      - host-upload:/home/foo/upload
      - tomcat-webapps:/usr/local/tomcat/webapps
    ports:
      - target: 8080
        published: 8080
        protocol: tcp
        mode: ingress
      - target: 2222
        published: 22
        protocol: tcp
        mode: ingress
    environment:
      - JAVA_MIN_HEAP=256m
      - JAVA_MAX_HEAP=512m
    deploy:
      placement:
        constraints:
          - node.role == manager
      replicas: 1
      resources:
        limits:
          memory: 1024M
          cpus: '0.5'
        reservations:
          memory: 512M
          cpus: '0.001'
      restart_policy:
        condition: any
        delay: 5s
        max_attempts: 3
        window: 60s
volumes:
  tomcat-data:
  host-upload:
  tomcat-webapps:
networks:
  default:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM