Docker WordPress容器ERR_CONNECTION_REFUSED问题求助(macOS环境)
解决WordPress容器无法访问的问题
首先纠正你端口映射的错误:官方WordPress镜像默认在容器内部使用80端口提供服务,你之前的命令把主机8080端口映射到了容器的8080端口,这是无效的——容器内根本没有程序监听8080端口,所以会出现连接拒绝。
单容器快速启动(需外部MySQL)
如果你已经有可用的MySQL服务,使用以下命令启动WordPress容器:
docker run -p 8080:80 wordpress
执行后,访问http://localhost:8080就能进入WordPress安装界面。
推荐:用Docker Compose搭建完整开发环境
WordPress依赖MySQL数据库,单独启动容器需要手动配置数据库连接,对新手不友好。用Docker Compose可以一键启动WordPress和MySQL两个服务,自动完成网络配置和环境变量设置:
- 本地创建一个空目录(比如
wp-dev),进入该目录后创建docker-compose.yml文件,写入以下内容:
version: '3.8' 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 volumes: - ./wp-content:/var/www/html/wp-content ports: - "8080:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress volumes: db_data:
- 在该目录下执行启动命令:
docker-compose up -d
- 等待容器启动完成后,访问
http://localhost:8080即可开始WordPress安装。
额外排查步骤
如果还是无法访问,试试这些方法:
- 确认Docker Desktop处于运行状态(右上角状态栏图标正常显示)
- 执行
docker ps命令,查看WordPress容器的状态是否为Up - 尝试用
127.0.0.1或host.docker.internal替代localhost访问 - 若8080端口被占用,修改端口映射为
-p 8081:80(单容器)或"8081:80"(Compose)
内容的提问来源于stack exchange,提问作者newbiedev
相关产品推荐
相关产品推荐

