Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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
Mysql 为现有Wordpress站点设置Docker容器_Mysql_Wordpress_Docker - Fatal编程技术网

Mysql 为现有Wordpress站点设置Docker容器

Mysql 为现有Wordpress站点设置Docker容器,mysql,wordpress,docker,Mysql,Wordpress,Docker,我正在尝试为现有的wordpress网站设置一个开发环境,该网站托管在cPanel上 我已经从现有的预生产数据库中导出了测试数据,以便导入到其中一个容器中运行的mysql中 version: '3.3' services: db: image: mysql:latest command: --default-authentication-plugin=mysql_native_password restart: always environment:

我正在尝试为现有的wordpress网站设置一个开发环境,该网站托管在cPanel上

我已经从现有的预生产数据库中导出了测试数据,以便导入到其中一个容器中运行的mysql中

version: '3.3'

services:
  db:
    image: mysql:latest
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: P@ssw0rd
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    ports:
      - "3306:3306"
    volumes:
      - db_data:/var/lib/mysql


  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:
      - /local/path/to/wordpress/src/:/var/www/html

volumes:
    db_data: {}
一切都很好。现在我将把数据库转储插入容器中的mysql数据库中

cat dump.sql | docker exec -i docker_db_1 /usr/bin/mysql -u wordpress --password=wordpress wordpress

结束时没有错误。现在在
localhost:8000
上尝试访问该网站时,会弹出Apache Ubuntu默认页面,但我在现有wordpress网站上看不到任何内容

这个设置对我有效

docker-compose.yml

版本:“3.6” 服务:

wordpress:
  image: wordpress:${WORDPRESS_VERSION}
  container_name: wordpress
  volumes:
    - ${WORDPRESS_DATA_DIR}:/var/www/html
  environment:
    - WORDPRESS_DB_NAME=${WORDPRESS_DB_NAME}
    - WORDPRESS_DB_HOST=${WORDPRESS_DB_HOST}
    - WORDPRESS_DB_USER=${WORDPRESS_DB_USER}
    - WORDPRESS_DB_PASSWORD=${WORDPRESS_DB_PASSWORD}
  depends_on:
    - mysql
  restart: always

mysql:
  image: mysql:${MYSQLDB_VERSION}
  container_name: mysql
  command: --default-authentication-plugin=mysql_native_password
  restart: always
  environment:
    - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
    - MYSQL_USER=${MYSQL_USER}
    - MYSQL_PASSWORD=${MYSQL_PASSWORD}
    - MYSQL_DATABASE=${MYSQL_DATABASE}
  ports:
    - 3306:3306
  volumes:
    - ./mysql:/var/lib/mysql
    - ./mysql_config:/tmp/mysql_config

nginx:
  image: nginx:${NGINX_VERSION:-latest}
  container_name: nginx
  ports:
    - '80:80'
    - '443:443'
  volumes:
    - ${NGINX_CONF_DIR}:/etc/nginx/conf.d
    - ${NGINX_LOG_DIR}:/var/log/nginx
    - ${WORDPRESS_DATA_DIR}:/var/www/html
  depends_on:
    - wordpress
  restart: always
首先将所有使用的变量设置为环境变量。 要使用以下命令连接到任何容器:

docker exec -i -t <wordpress|mysql|nginx> /bin/bash
docker exec-i-t/bin/bash

这个设置对我很有效

docker-compose.yml

版本:“3.6” 服务:

wordpress:
  image: wordpress:${WORDPRESS_VERSION}
  container_name: wordpress
  volumes:
    - ${WORDPRESS_DATA_DIR}:/var/www/html
  environment:
    - WORDPRESS_DB_NAME=${WORDPRESS_DB_NAME}
    - WORDPRESS_DB_HOST=${WORDPRESS_DB_HOST}
    - WORDPRESS_DB_USER=${WORDPRESS_DB_USER}
    - WORDPRESS_DB_PASSWORD=${WORDPRESS_DB_PASSWORD}
  depends_on:
    - mysql
  restart: always

mysql:
  image: mysql:${MYSQLDB_VERSION}
  container_name: mysql
  command: --default-authentication-plugin=mysql_native_password
  restart: always
  environment:
    - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
    - MYSQL_USER=${MYSQL_USER}
    - MYSQL_PASSWORD=${MYSQL_PASSWORD}
    - MYSQL_DATABASE=${MYSQL_DATABASE}
  ports:
    - 3306:3306
  volumes:
    - ./mysql:/var/lib/mysql
    - ./mysql_config:/tmp/mysql_config

nginx:
  image: nginx:${NGINX_VERSION:-latest}
  container_name: nginx
  ports:
    - '80:80'
    - '443:443'
  volumes:
    - ${NGINX_CONF_DIR}:/etc/nginx/conf.d
    - ${NGINX_LOG_DIR}:/var/log/nginx
    - ${WORDPRESS_DATA_DIR}:/var/www/html
  depends_on:
    - wordpress
  restart: always
首先将所有使用的变量设置为环境变量。 要使用以下命令连接到任何容器:

docker exec -i -t <wordpress|mysql|nginx> /bin/bash
docker exec-i-t/bin/bash

您找到解决方案了吗?你能分享一下吗?你找到解决办法了吗?你能分享一下吗,以防万一?