首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >file_get_contents不使用停靠容器中的本地域

file_get_contents不使用停靠容器中的本地域
EN

Stack Overflow用户
提问于 2022-04-08 09:45:25
回答 1查看 758关注 0票数 1

我在为本地主机上的码头设置而挣扎。当用本地域调用file_get_contents()函数时,我收到三个警告:

代码语言:javascript
复制
1. SSL operation failed with code 1. OpenSSL Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
2. Failed to enable crypto 
3. failed to open stream: Cannot assign requested address

最初,我有一个相对复杂的设置,以nginx作为反向代理、自签名SSL证书、mariadb、wordpress、wpcli、phpmyadmin、mailhog和redis。为了简单起见,我正在粘贴一个简单的docker-组合文件。在这个设置中,我得到: file_get_contents()未能打开流:无法分配请求的地址

代码语言:javascript
复制
version: '3.6'
services:

  mysql:
    container_name: docker-test-mysql
    image: mariadb:latest   
    volumes:
      - ./db_data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_USER: root
      MYSQL_PASSWORD: root
      MYSQL_DATABASE: docker-test
    restart: always
    ports:
      - 3306:3306
    networks:
      - webnet    

  wordpress:
    container_name: docker-test-wordpress
    image: wordpress:latest  
    ports:
      - 8000:80
    volumes:
      - wp_data:/var/www/html:rw,cached
      - ./wordpress:/var/www/html:rw,cached
    depends_on:
      - mysql
    restart: always
    environment:
      WORDPRESS_DB_NAME: docker-test
      WORDPRESS_TABLE_PREFIX: wp_
      WORDPRESS_DB_HOST: mysql
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: root
      WORDPRESS_DEBUG: 1
    networks:
      - webnet

networks:
  webnet:
    external: true
    driver: bridge

volumes:
  db_data: {}
  wp_data: {}

该函数在调用外部域时工作,但仅对本地域(https://my-local-domain.localhttp://localhost:8000)失败。

我遗漏了什么?任何帮助都是非常感谢的!

诚挚的问候

EN

回答 1

Stack Overflow用户

发布于 2022-04-08 10:28:16

码头就是这样工作的。容器中的localhost本身就是。您正在将容器的端口80映射到本地机器的8000端口上。

但是在同一个容器中,正确的url只是本地主机或您的坞-组合文件中容器的名称(在本例中是wordpress),因为docker也创建了一个网络,并使用网络中的服务别名来查找它们。

所以您可以使用file_get_contents('http://localhost/...')或file_get_contents('http://wordpress/...')

如果要使用其他别名,还可以在docker复合文件中添加额外的主机。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71794883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档