我正在尝试在 Ubuntu 17.10 上设置 docker wordpress 作为我的开发环境。我制作了数据库的副本并将其放入端口 8080 上的 docker mysql 服务中(使用 wp 插件,该插件更改了主页和站点 url)
我已经到达下面的 docker-compose.yml 文件,但每次我访问 localhost:8000 或端口 80 时,我都会被重定向到原始在线站点。我不知道出了什么问题?
version: '3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootPword
MYSQL_DATABASE: xyz_wp
MYSQL_USER: xyz_2015
MYSQL_PASSWORD: userPword
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
# generally need to use non-default values
WORDPRESS_DB_HOST: db:3306
# next line often not in tutorials - https://stackoverflow.com/questions/46117771/issue-getting-docker-to-access-my-database-properly-with-wordpress
WORDPRESS_DB_NAME: xyz_wp
WORDPRESS_DB_USER: xyz_2015
WORDPRESS_DB_PASSWORD: userPword
WORDPRESS_TABLE_PREFIX: "af_"
working_dir: /var/www/html
volumes:
- /home/simon/code/wp_af2015/wp-content:/var/www/html/wp-content
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: phpmyadmin
environment:
MYSQL_USERNAME: root
MYSQL_ROOT_PASSWORD: rootPword
restart: always
ports:
- 8080:80
links:
- db
volumes:
db_data:
最佳答案
我认为这里有一点误解。
当您在域后面添加 :
时,它会指定端口。
从 PhpMyAdmin 的屏幕截图来看,您似乎在端口 8000
上设置了 Wordpress。因为在:
之后,已经设置了8000
。
从你的docker文件来看,有一个错误,因为从你写的内容来看,它是错误的。
端口应为 :80
或 :8000
,但不能同时为两者。
如果您希望 docker 监听localhost port 8000
(您的 WP),
然后在你的docker配置中,你应该设置:
ports:
- "8000"
重新启动 Docker,它应该按预期工作。
关于mysql - Docker Wordpress 不断重定向到网站的在线版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47113406/