docker之webapi与mysql容器互联

假设我们要运行两个镜像,一个为mysql镜像,一个为webapi镜像,webapi中要连接mysql数据库操作,连接字符串如下所示,其中db就是我们的mysql数据库的主机名,可以通过多种方式实现api和db之间的连接

{
 "ConnectionStrings": {
    "MysqlUser": "server=db;port=3306;database=beta_user;userid=root;password=password123" 
  } 
}
  • 启动mysql镜像
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
  • 启动wepapi镜像
docker run -d -p 8801:80 --name=mysql01 myapi
  • 检查api和mysql是否联通
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
  • 用别名的方式把容器连接到network中
docker network connect --alias db mybridge mysql01
  • 在容器启动时指定network
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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转载自 http://blog.opskumu.com/docker.html 一、Docker 简介 Docke...
    极客圈阅读 13,606评论 0 120
  • 我的乡愁 是一盏扑闪扑闪的煤油灯 灯光里 全是您慈祥的愁容 我的乡愁 是一辆叽歪叽歪的牛车 声音里 全是您坚强的背...
    絮语心说阅读 1,850评论 0 1
  • 我家有七八个亲戚都在这二三年内换了新房子,于是在去年春节时,集中时间去各个家里拜访了一次。差不多有四个亲戚家是在同...
    苏听风阅读 8,966评论 0 36

友情链接更多精彩内容