在Heroku上使用Laravel Docker容器和ClearDB数据库yeilds:SQLSTATE[HY000][2002]php\u network\u getaddresses:getaddrinfo失败
我对Heroku和Docker都是新手,所以请原谅任何冗余,并感谢我能得到的任何帮助 我有一个Docker容器,它在本地运行良好,我的web应用程序现在也在Heroku上运行。但是,当我尝试登录时,出现以下错误:在Heroku上使用Laravel Docker容器和ClearDB数据库yeilds:SQLSTATE[HY000][2002]php\u network\u getaddresses:getaddrinfo失败,laravel,docker,heroku,Laravel,Docker,Heroku,我对Heroku和Docker都是新手,所以请原谅任何冗余,并感谢我能得到的任何帮助 我有一个Docker容器,它在本地运行良好,我的web应用程序现在也在Heroku上运行。但是,当我尝试登录时,出现以下错误: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known (SQL: select * from `users` where `email` = nick
SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known (SQL: select * from `users` where `email` = nick@boomboxpops.com limit 1)
我正在为MySql数据库使用ClearDB附加组件,并将Heroku中的所有配置变量设置为连接到该数据库。我已经用Sequel Pro进行了测试,它是活动的
我想知道我是否还有别的事要做。在使用Docker容器部署站点之前,我使用的是配置变量,它们似乎覆盖了我的Laravel应用程序中的.env文件
这是我的配置:
DockerFile:
FROM php:7
RUN apt-get update -y && apt-get install -y openssl zip unzip git
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
RUN docker-php-ext-install pdo pdo_mysql
WORKDIR /app
COPY . /app
RUN composer install
CMD php artisan serve --host=0.0.0.0 --port=$PORT
EXPOSE 8181
docker-compose.yml:
version: '2'
services:
web:
build: .
ports:
- "8009:8000"
volumes:
- .:/app
env_file: .env
working_dir: /app
command: bash -c 'php artisan migrate && php artisan serve --host 0.0.0.0'
depends_on:
- db
links:
- db
db:
image: "mysql:5.7"
environment:
- MYSQL_ROOT_PASSWORD={pass}
- MYSQL_DATABASE={dbname}
- MYSQL_USER=root
- MYSQL_PASSWORD={pass}
volumes:
- ./data/:/var/lib/mysql
ports:
- "3306:3306"
phpmyadmin:
depends_on:
- db
image: phpmyadmin/phpmyadmin
restart: always
ports:
- 8090:80
environment:
PMA_HOST: db
MYSQL_ROOT_PASSWORD: {mypass}
我在heroku的部署如下:
#heroku container:login
#heroku container:push web --app bmbx-inventory
#heroku container:release web --app bmbx-inventory