使用Docker创建多docker-compose互通网络通用Mysql服务
本文将介绍如何使用 Docker 创建多 docker-compose 互通网络服务。我们将会讨论如何创建一个公共的 Mysql 数据库,然后再创建一个服务来连接我们的公用本地 Mysql 数据库。同时,我们还会解决如何处理那些在 docker-compose 上将数据库一起写的服务,以及如何在 docker-compose 上运行能共用数据的服务。 简介 Docker Compose 是一个用于定义和运行多个容器应用程序的工具。使用 Docker Compose 可以轻松地运行多个容器,并可以创建一个公共网络来让这些容器之间互相通信。在这篇文章中,我们将会使用 Docker Compose 来创建一个公共网络,并将我们的服务加入到这个网络中,以便它们之间可以互相通信。 创建公共网络 mysql 我们首先需要创建一个公共的网络 mysql。我们可以使用以下命令来创建一个名为 mysql 的网络: docker network create mysql 创建完成后,我们可以使用以下命令来查看创建的网络: docker network ls docker-compose 运行公共 mysql 服务 现在我们已经创建了一个名为 mysql 的公共网络,接下来我们将使用 docker-compose 来运行一个 Mysql 服务,并将它添加到这个网络中。 在你的项目文件夹下,创建一个名为 docker-compose.yml 的文件,并将以下代码添加到文件中: version: "3.8" services: mysql8: container_name: mysql8 image: mysql:8 #restart: always 本地运行就不需要自启了 command: --default-authentication-plugin=mysql_native_password ports: - "3306:3306" environment: TZ: Asia/Shanghai MYSQL_ROOT_PASSWORD: chengzz hostname: mysql8 volumes: - "~/Docker/mysql8/data:/var/lib/mysql" - "~/Docker/mysql8/my.cnf:/etc/mysql/conf.d/my.cnf" networks: - mysql networks: mysql: external: true # 自己手动创建公共网络mysql # docker network create mysql 该代码指定了我们要创建的服务为 mysql8,它使用最新的 Mysql8 镜像,并设置了 Mysql 的 root 密码。我们还将服务添加到了名为 mysql 的公共网络中。 ...