Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Docker设置本地wordpress?_Wordpress_Docker_Docker Compose - Fatal编程技术网

如何使用Docker设置本地wordpress?

如何使用Docker设置本地wordpress?,wordpress,docker,docker-compose,Wordpress,Docker,Docker Compose,所以我决定尝试Docker开发我的本地Wordpress 幸运的是,Docker有一个 我遵循了整个过程,我想我理解了大部分。然而,当我启动并运行Docker容器时,它完全安装了Wordpress,而不是使用我在项目中使用的本地文件。我最初认为将目录更改为项目文件夹允许它读取其中的文件。显然,我错了。我试着在网上搜索答案,然后 其中大多数只是关于如何使用Docker for WP的教程 因此,考虑到这一点,我如何创建一个Docker容器(或更改Docker YAML文件)来使用我拥有的本地WP文

所以我决定尝试Docker开发我的本地Wordpress

幸运的是,Docker有一个

我遵循了整个过程,我想我理解了大部分。然而,当我启动并运行Docker容器时,它完全安装了Wordpress,而不是使用我在项目中使用的本地文件。我最初认为将目录更改为项目文件夹允许它读取其中的文件。显然,我错了。我试着在网上搜索答案,然后 其中大多数只是关于如何使用Docker for WP的教程

因此,考虑到这一点,我如何创建一个Docker容器(或更改Docker YAML文件)来使用我拥有的本地WP文件

docker compose.yml

version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
volumes:
    db_data: {}
项目结构

/project
  /app
  /sql
  docker-compose.yml
我在Ubuntu 19.04上运行

您只需要将主机的内容添加到容器中即可。您可以在当前目录结构中查找
wp内容
,可能在
app/wp内容

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     volumes:
        - wp-content:/var/www/html/wp-content
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
您可以在docker上阅读更多详细信息和

Wordpress 使用以下命令创建
docker compose.yml

version: '3.1'
services:
  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    volumes:
      - ./app:/var/www/html
    environment:
      WORDPRESS_DB_PASSWORD: DoKRteST
      WORDPRESS_DB_HOST: mysql
  mysql:
    image: mysql:5.7
    # Uncomment the below code to maintain the persistancy of the data 
    # volumes:
          # - ./wordpress:/var/www/html
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: DoKRteST
/app
文件夹是实际的wordpress应用程序文件夹

只需点击
要在

上运行它,我必须删除外部的卷吗?外部是什么意思?只需将wordpress应用程序放在应用程序文件夹中并运行它。如果你是从头开始运行,你只需运行应用程序而不添加任何内容。容器将直接创建应用程序。我认为引用卷中本地文件夹的“.”是它不同步的原因。谢谢