我正在使用Docker在CentOS Linux本地服务器上运行WordPress应用程序。我最近将PHP镜像从8.1.19升级到8.2.7。我能够使它在较低的环境服务器和我的本地运行,但当我试图在不同的服务器上运行它。我无法更新插件,当我检查进入容器并尝试curl -I google.com
时,它抛出以下错误
root@sample-app-qa:/var/www/html# curl -I google.com
curl: (6) getaddrinfo() thread failed to star
字符串
当我检查服务器的监听端口时
netstat -tulpn | grep LISTEN
tcp6 0 0 :::80 :::* LISTEN 43087/docker-proxy
tcp6 0 0 :::443 :::* LISTEN 43073/docker-proxy
型
它显示其使用IPv6的端口80和443的docker-proxy
。这是导致问题的原因吗?因为当我检查其他服务器和在我的本地使用IPv4
netstat -tulpn | grep LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 121790/docker-proxy
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 121775/docker-proxy
型
如果这是问题所在,我如何强制docker在端口80和443上使用IPv4?此外,该问题直到PHP 8.1.19及更低版本才出现,该问题仅在8.2.x版本中出现。
1条答案
按热度按时间htzpubme1#
我在服务器
Docker version 18.09.7
上使用了旧版本的Docker。我能够将Docker更新到更新的版本Docker version 24.0.4
,这解决了这个问题。