Docker乘客仪表板显示MySQL can';t连接到插座

Docker乘客仪表板显示MySQL can';t连接到插座,mysql,ruby-on-rails,nginx,docker,passenger,Mysql,Ruby On Rails,Nginx,Docker,Passenger,我正在尝试在phusion/passer-ruby21容器和一个单独的mysql:5.5.46容器上部署RubyonRails应用程序。两者都是链接的,没有docker compose 我使用以下命令运行Passenger ruby容器: sudo docker run-it-p80:80——链接mysql55:mysql-e.env——名称ror1 rubyonrails-phusionimg2/bin/bash mysql容器,包含: sudo docker run--detach--na

我正在尝试在phusion/passer-ruby21容器和一个单独的mysql:5.5.46容器上部署RubyonRails应用程序。两者都是链接的,没有docker compose

我使用以下命令运行Passenger ruby容器:
sudo docker run-it-p80:80——链接mysql55:mysql-e.env——名称ror1 rubyonrails-phusionimg2/bin/bash
mysql容器,包含:
sudo docker run--detach--name mysql55--env MYSQL_ROOT_PASSWORD=*****--env MYSQL_USER=*****--env MYSQL_PASSWORD=*****--env MYSQL_DATABASE=*****MYSQL:5.5.46

这是Rails应用程序中我的
数据库.yml

staging:
  adapter: mysql2
  database: "<%= ENV["DATABASE_NAME"] %>"
  host: "<%= ENV["MYSQL_PORT_3306_TCP_ADDR"] %>"
  port: "<%= ENV["MYSQL_PORT_3306_TCP_PORT"] %>"
  username: "<%= ENV["DATABASE_USERNAME"] %>"
  password: "<%= ENV["DATABASE_STAGING_PASSWORD"] %>"
rake db:create db:migrate
成功运行,这意味着具有暂存环境的rake程序能够访问mysql数据库容器。但是从乘客仪表板上,我仍然发现
无法通过socket/var/run/mysqld/mysqld.sock连接到本地MySQL服务器(2)


我错过什么了吗?所有的env似乎都已加载且正确无误。

您没有在应用程序中指定mysql的连接主机


如果不指定主机,mysql将尝试连接您主机上的服务器,而不是容器中的服务器。

我更改了apps database.yml文件中的mysql数据库环境变量,这些变量在容器启动并连接到mysql数据库时预加载。例如,“数据库名称”到“MYSQL\u环境\u MYSQL\u数据库”

staging:
适配器:mysql2
数据库:
主持人:
端口:
用户名:
密码:`

附加其他信息如何在docker中运行应用程序,plsMYSQL_PORT_3306_TCP_ADDR是包含mysql容器IP地址的环境变量。我甚至加载了容器名称并尝试,但没有运气。
# /etc/nginx/sites-enabled/webapp.conf:
 server {
    listen       80;
    server_name  *****.com;
    root /home/app/webapp/public;
    passenger_enabled on;
    rails_env staging;
    index index.html index.htm;
    # auth_basic "Restricted";
    # auth_basic_user_file /etc/nginx/htpasswd;
}
staging:
  adapter: mysql2
  database: <%= ENV['MYSQL_ENV_MYSQL_DATABASE'] %>
  host: <%= ENV['MYSQL_PORT_3306_TCP_ADDR'] %>
  port: <%= ENV['MYSQL_PORT_3306_TCP_PORT'] %>
  username: <%= ENV['MYSQL_ENV_MYSQL_USER'] %>
  password: <%= ENV['MYSQL_ENV_MYSQL_PASSWORD'] %>`