我已使MySQL容器运行对接。当我尝试从其他已对接的应用程序连接到此mysql-docker-service时,它失败。
我的docker-compose:
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:查找mysqlcontainer:// mysqlserver:8001:没有此类主机
我在这里想念什么?这是我的第一个dockerized MySQL工作。
在sql-scripts/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)
);
但这不是在运行时创建的。