【问题标题】:connection laravel with mysql container on docker将 laravel 与 docker 上的 mysql 容器连接
【发布时间】:2019-08-21 18:54:11
【问题描述】:

在 Docker 上我已经有 Laravel 容器和 Container MySQL,如何在 Docker 上连接 MySQL 容器和 Laravel 容器?

【问题讨论】:

    标签: mysql laravel docker


    【解决方案1】:

    这就是 docker-compose 的用途!

    查看本教程:https://docs.docker.com/compose/wordpress/

    它正在尝试做类似的事情:将 wordpress 连接到 mysql。关键是 docker-compose.yml 中定义的两个 docker 容器共享同一个网络 - 您可以使用它们的逻辑名称来引用每个容器。查看 WORDPRESS_DB_HOST 环境变量如何设置为 db:3306 - 这将解析为 docker 网络中 mysql 容器的 IP。

    【讨论】:

      【解决方案2】:

      基本上,所有容器都必须在同一个网络中运行。

      # create your network
      $ docker network create laravel
      
      # start your container and link it to your network
      $ docker run -d --network="laravel" --name="mysql01" mysql:8.0
      
      # after your mysql is up and running, connect your second and third container like this
      $ docker run -d --network="laravel" --name="latihananakit_web" yourimage:yourtag
      $ docker run -d --network="laravel" --name="latihananakit_app" yourimage:yourtag
      

      我建议在这种情况下使用docker-compose,因为它使整个docker run-事情变得容易得多。

      参考这里:
      https://docs.docker.com/compose/
      https://github.com/bitnami/bitnami-docker-laravel/blob/master/docker-compose.yml

      TL;DR:
      像这样创建您的docker-compose.yml(您可以根据需要更改环境变量或其他配置):

      version: '2'
      
      services:
        mariadb:
          image: 'bitnami/mariadb:latest'
          environment:
            - ALLOW_EMPTY_PASSWORD=yes
            - MARIADB_USER=my_user
            - MARIADB_DATABASE=my_database
            - MARIADB_PASSWORD=my_password
      
        myapp:
          tty: true
          image: bitnami/laravel:5-debian-9
          environment:
            - DB_HOST=mariadb
            - DB_USERNAME=my_user
            - DB_DATABASE=my_database
            - DB_PASSWORD=my_password
          depends_on:
            - mariadb
          ports:
            - 3000:3000
          volumes:
            - ./:/app
      

      并通过在同一目录中执行 docker-compose up -d 来启动并运行所有内容。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-03-01
        • 2019-10-12
        • 2019-04-14
        • 2021-06-30
        • 2019-05-24
        • 2019-03-05
        • 2017-12-12
        • 2019-01-25
        相关资源
        最近更新 更多