我有一个使用 PHP、Nginx 和 dynamodb 开发的应用程序。我创建了一个简单的 docker-compose 来在本地工作。version: '3.7'services: nginx_broadway_demo: container_name: nginx_broadway_demo image: nginx:latest ports: - 8080:80 volumes: - ./www:/var/www - ./docker/nginx/vhost.conf:/etc/nginx/conf.d/default.conf - ./docker/nginx/nginx.conf:/etc/nginx/nginx.conf links: - php_fpm_broadway_demo php_fpm_broadway_demo: container_name: php_fpm_broadway_demo build: context: ./docker/php ports: - 9000:9000 volumes: - .:/var/www/web dynamodb: image: amazon/dynamodb-local ports: - 8000:8000 expose: - 8000现在我需要添加 dynamodb URL 参数以允许 PHP 查询数据库。因此,如果我从 PHP docker 容器进行 ping,这样就可以正常工作:ping dynamodb这是行不通的。ping http://dynamodb:8000我需要使用 http://dynamodb:8000 因为 AWS 需要 URI,因为如果我使用 http://dynamodb:8000 就会出现此错误:Endpoints must be full URIs and include a scheme and host那么:如何像 URL 一样调用 docker 容器呢?我尝试过使用 docker-compose 参数,例如:depends, links,network没有成功
1 回答
月关宝盒
TA贡献1772条经验 获得超5个赞
当依赖项安装在主机上并在容器内部用作底层平台上的作曲家工作基础时,就会出现错误。
因此我们调查发现该问题是由于上述原因造成的。安装dependency
在容器内可以解决问题。
docker exec -it php bash -c "cd web; composer install"
- 1 回答
- 0 关注
- 129 浏览
添加回答
举报
0/150
提交
取消