【问题标题】:load files into docker volumes from host using YAML file -docker使用 YAML 文件 -docker 将文件从主机加载到 docker 卷中
【发布时间】:2019-09-02 10:59:23
【问题描述】:

我使用Docker Compose 构建了一个wordpress 和wordpress cli 图像。它工作得很好。现在我想在里面安装plugins。 我的plugin zip 文件位于docker_compose.yml 文件所在的目录中。我想在我的docker compose 文件中添加行来安装插件并将其加载到 Docker 容器中。

这是我写的 yml 文件:

version: "3.3"
services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_RANDOM_ROOT_PASSWORD: 1
      MYSQL_DATABASE: wordpressdb
      MYSQL_USER: paulsteven
      MYSQL_PASSWORD: passw

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    ports:
      - 8000:80
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wordpressdb
      WORDPRESS_DB_USER: paulsteven
      WORDPRESS_DB_PASSWORD: passw
      WORDPRESS_TABLE_PREFIX: "wp_"
      WORDPRESS_DEBUG: 1
    volumes:
      - wp_data:/var/www/html
      - ./wp_plugins_files: /var/www/html       ==>  here it is,but it does not loaded and installed in container
  wordpress-cli:
    depends_on:
      - db
      - wordpress
    image: wordpress:cli
    user: xfs
    command: >
      /bin/sh -c '
      sleep 10;
      wp core install --path="/var/www/html" --url="http://192.168.1.34:8000" --title="Local Wordpress By Docker" --admin_user=paulsteven --admin_password=pass --admin_email=paulsteven@mail.com;
      wp plugin install gutenberg.1.9.1.zip –activate    ==> Install plugin in Container
      '

    volumes:
      - wp_data:/var/www/html

volumes:
  db_data:
  wp_data:

但我的文件没有加载到容器中。我不知道如何使它成为可能。我想要安装了我的插件文件的容器。帮我解决一些问题。

【问题讨论】:

    标签: wordpress docker docker-compose dockerfile


    【解决方案1】:

    这是关于您的代码的解决方案:

    version: "3.3"
    services:
      db:
        image: mysql:5.7
        volumes:
          - db_data:/var/lib/mysql
        restart: always
        environment:
          MYSQL_RANDOM_ROOT_PASSWORD: 1
          MYSQL_DATABASE: wordpressdb
          MYSQL_USER: paulsteven
          MYSQL_PASSWORD: passw
    
      wordpress:
        depends_on:
          - db
        image: wordpress:latest
        ports:
          - 8000:80
        restart: unless-stopped
        environment:
          WORDPRESS_DB_HOST: db:3306
          WORDPRESS_DB_NAME: wordpressdb
          WORDPRESS_DB_USER: paulsteven
          WORDPRESS_DB_PASSWORD: passw
          WORDPRESS_TABLE_PREFIX: "wp_"
          WORDPRESS_DEBUG: 1
    
        volumes:
          - wp_data:/var/www/html
          - ./wp_plugins:/var/www/html/wp_plugins
      wordpress-cli:
        depends_on:
          - db
          - wordpress
        image: wordpress:cli
    
        user: xfs
    
        command: >
          /bin/sh -c '
          sleep 10;
          wp core install --path="/var/www/html" --url="http://192.168.1.34:8000" --title="Local Wordpress By Docker" --admin_user=paulsteven --admin_password=passw --admin_email=paulstevens@mail.com;
          wp plugin install /var/www/html/wp_plugins/plugin_name.zip;
          wp plugin activate plugin_name'
    
        volumes:
          - wp_data:/var/www/html
          - ./wp_plugins:/var/www/html/wp_plugins      
    volumes:
      db_data:
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-03
      • 1970-01-01
      • 2021-05-24
      • 1970-01-01
      • 2020-01-03
      • 2014-03-29
      • 2019-11-15
      相关资源
      最近更新 更多