假设我们要运行两个镜像,一个为mysql镜像,一个为webapi镜像,webapi中要连接mysql数据库操作,连接字符串如下所示,其中db就是我们的mysql数据库的主机名,可以通过多种方式实现api和db之间的连接
{
"ConnectionStrings": {
"MysqlUser": "server=db;port=3306;database=beta_user;userid=root;password=password123"
}
}
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password123 -e MYSQL_ROOT_HOST=% -v d:/mysql/config/my.cnf:/etc/my.cnf --name mysql01
mysql/mysql-server
docker run -d -p 8801:80 --name=mysql01 myapi
docker exec -it myapi bash
ping db
- 使用docker netcork 将容器连接到一起
docker network ls
docker network create -d bridge mybridge
docker rename mysql01 db
docker network connect mybridge db
docker network connect mybridge myapi
docker network connect --alias db mybridge mysql01
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password123 -e MYSQL_ROOT_HOST=% -v d:/mysql/config/my.cnf:/etc/my.cnf --name db --network=mybridge
mysql/mysql-server
docker run -d -p 8801:80 --network=mybridge --name myapi myapi
网友评论