使用podman-compose运行WordPress时网络升级失败,无法连接自身域名
解决Podman Compose下WordPress升级时cURL Error 7的问题
问题根源
容器内部无法解析并连接自身域名,本质是Podman网络的端口映射或域名解析逻辑导致请求无法正确路由回宿主机服务。
具体解决方案
添加额外主机映射(推荐方案,保留网络隔离)
在podman-compose.yml的WordPress服务配置中加入extra_hosts字段,将你的域名直接指向宿主机内部地址:services: wordpress: # 原有配置(镜像、端口映射等)保留 extra_hosts: - "mydomain.tld:host.containers.internal" # Podman 3.0+支持该内置域名指向宿主机 # 若上述无效,可替换为宿主机具体内网IP:- "mydomain.tld:192.168.x.x"重启容器生效:
podman-compose down && podman-compose up -d切换为Host网络模式(快速验证,注意端口冲突)
若不需要网络隔离,可将WordPress服务的网络模式改为host,让容器直接使用宿主机网络栈:services: wordpress: network_mode: "host" # 移除原有端口映射配置,避免冲突验证容器内部连通性
进入容器测试域名访问,确认配置生效:podman exec -it <你的wordpress容器名> bash curl -v https://mydomain.tld校准WordPress站点配置
确保wp-config.php中站点URL与域名一致,避免内部访问路径冲突:define('WP_SITEURL', 'https://mydomain.tld'); define('WP_HOME', 'https://mydomain.tld');检查防火墙规则
确认宿主机防火墙未拦截容器发出的443端口请求,Podman默认bridge网络规则通常允许内部通信,但手动配置的防火墙需放行相关流量。
内容的提问来源于stack exchange,提问作者Thomas R.
相关产品推荐
相关产品推荐

