连接到dockarized MySQL服务失败
我已经将MySQL容器运行文档化了。当我尝试从其他dockarized应用程序连接到此mysql docker服务时,它失败了 我的码头工人:连接到dockarized MySQL服务失败,mysql,docker,Mysql,Docker,我已经将MySQL容器运行文档化了。当我尝试从其他dockarized应用程序连接到此mysql docker服务时,它失败了 我的码头工人: version: '3' services: mysqlserver: image: mysql-server container_name: mysqlcontainer build: context: mysql-module/ dockerfile: Dockerfile env_fil
version: '3'
services:
mysqlserver:
image: mysql-server
container_name: mysqlcontainer
build:
context: mysql-module/
dockerfile: Dockerfile
env_file: mysql-module/mysql.env
networks:
- backend
volumes:
- ./mysql-data:/var/lib/mysql
ports:
- 8001:3306
users:
image: users
build:
context: .
dockerfile: Dockerfile
ports:
- 7171:7171
env_file: ./api.env
networks:
- backend
networks:
backend:
driver: "bridge"
MySQL dockerfile:
FROM mysql/mysql-server:latest
ENV MYSQL_DATABASE userservice
ADD sql-scripts/createUsers.sql /docker-entrypoint-initdb.d
我从外部文件获取数据库凭据。
MYSQLDBGATEWAY=root:7890@tcp(mysqlcontainer://mysqlserver:8001)/userservice?parseTime=true
获取用户详细信息时出错,请拨打tcp:lookup mysqlcontainer://mysqlserver:8001: 没有这样的主人
我错过了什么?这是我的第一个停靠MySQL的工作
在sql脚本/createUsers.sql
文件中,我还有:
CREATE TABLE IF NOT EXISTS managerMinQuota (
id int NOT NULL AUTO_INCREMENT,
plan varchar(50) DEFAULT NULL,
minLimit int DEFAULT NULL,
PRIMARY KEY (id)
);
但这不是在运行时创建的。必须在容器网络内部使用3306@Max
MYSQLDBGATEWAY=root:7890@tcp(mysqlcontainer://mysqlserver:3306)/userservice?parseTime=true
这是我需要做的唯一更改吗?对于表,您必须等待mysql启动,然后执行script@Max获取用户详细信息时出错拨号tcp:lookup mysqlcontainer://mysqlserver:3306: 没有这样的主机