代码之家  ›  专栏  ›  技术社区  ›  progonkpa

Docker卷映射从来宾到主机的同步文件

  •  0
  • progonkpa  · 技术社区  · 7 年前

    test 会变得像主机中的html/test一样可见,但事实并非如此。我认为是因为Docker在主机中创建了一个空的html目录,并将其同步到guest。我尝试了docker run和docker compose,结果是一样的。

    问题是,当我对Dockerhub中的WordPress图像执行相同的操作时,我看到它在主机上创建了一个目录,整齐地同步guest中/var/www/html的所有文件。所以现在我想知道我怎样才能创造出同样的行为。

    FROM php:7.3.0-apache-stretch
    
    RUN touch /var/www/html/test; \
        echo success > /var/www/html/test
    
    VOLUME /var/www/html
    

    码头工人-合成.yml简单测试:

    version: '3'
    
    services:
      php:
        image: progonkpa/php-vol:1.0
        volumes:
          - ./html:/var/www/html
        restart: always
    

    Dockerfile WordPress

    码头工人-合成.yml使用WordPress官方图片(progonkpa/wordpress:1.0增加了XDebug和其他普通文件)

    version: '3'
    
    services:
       db:
         image: mysql:5.7
         volumes:
           - ./docker-mysql/db_data:/var/lib/mysql
         restart: always
         environment:
           MYSQL_ROOT_PASSWORD: wordpress
           MYSQL_DATABASE: wordpress
           MYSQL_USER: wordpress
           MYSQL_PASSWORD: wordpress
    
       wordpress:
         depends_on:
           - db
         image: progonkpa/wordpress:1.0
         restart: always
         ports:
           - "80:80"
         environment:
           WORDPRESS_DB_HOST: db:3306
           WORDPRESS_DB_USER: wordpress
           WORDPRESS_DB_PASSWORD: wordpress
         restart: always
         volumes:
           - ./wordpress:/var/www/html
           - ./src:/var/www/src
           - ./vendor:/var/www/vendor
    
    volumes:
        db_data:
    
    0 回复  |  直到 7 年前
    推荐文章