my homestead docker容器中缺少Mysql套接字

my homestead docker容器中缺少Mysql套接字,mysql,docker,laravel-4,Mysql,Docker,Laravel 4,我的应用程序有此问题 SQLSTATE[HY000][2002]无法通过连接到本地MySQL服务器 套接字'/var/run/mysqld/mysqld.sock'(2) 我正在使用2个docker容器来托管我的Laravel4.2(我想是:o) 这是我的docker-compose.yml web: image: shincoder/homestead:php5.6 restart: always ports: - "8000:80" # web - "2222:22" # s

我的应用程序有此问题

SQLSTATE[HY000][2002]无法通过连接到本地MySQL服务器 套接字'/var/run/mysqld/mysqld.sock'(2)

我正在使用2个docker容器来托管我的Laravel4.2(我想是:o)

这是我的docker-compose.yml

web:
image: shincoder/homestead:php5.6
restart: always
ports:
    - "8000:80" # web
    - "2222:22" # ssh
    - "35729:35729" # live reload
    - "9876:9876" # karma server
volumes:
    - ~/.composer:/home/homestead/.composer # composer caching
    - ~/.gitconfig:/home/homestead/.gitconfig # Git configuration ( access alias && config )
    - ~/.ssh:/home/homestead/.ssh # Ssh keys for easy deployment inside the container
    - ~/apps:/apps # all apps
    - ~/apps/volumes/nginx/sites-available:/etc/nginx/sites-available # nginx sites ( in case you recreate the container )
    - ~/apps/volumes/nginx/sites-enabled:/etc/nginx/sites-enabled # nginx sites ( in case you recreate the container )
links:
    - mariadb
mariadb:
    image: tutum/mariadb
    restart: always
    ports:
        - "33060:3306"
    environment:
        MARIADB_USER: admin # cannot be changed ( for info. only )
        MARIADB_PASS: root
    volumes:
        - ~/apps/volumes/mysql:/var/lib/mysql # database files
第一个是带有php5.6的homesteaddocker_web_1,第二个是homesteaddocker_mariadb_1。 我在homesteaddocker_web_1中搜索了mysql套接字,但它不在那里,但我在第二个容器(homesteaddocker_mariadb_1)中找到了它


那么我该如何解决这个问题呢。

Docker容器通过网桥联网

要使一个容器与另一个容器通信,您需要链接它们:


如果您的容器需要访问本地网络上的网络资源,您可能希望在docker run命令中使用
--network='host'

我更困惑的是,我用docker compose文件更新了我的问题。我以为您是在试图访问主机上运行的数据库。所以,我的错。现在,您的连接字符串是什么样子的?您不应该公开mariadb端口(除非您需要从外部使用),您应该连接到mariadb:3306@MrEI可以通过mysql workbench使用这些凭据(主机:127.0.0.1,端口:33060,用户名和密码)访问我的数据库,并且工作正常。是my laravel应用程序无法通过套接字连接到本地MySQL服务器。请尝试进入容器,看看是否可以ping/访问另一个容器。
docker exec-it/bin/sh