前一节演示在docker中安装mssql,地址:Docker学习笔记之--安装mssql(Sql Server)并使用Navicat连接测试(环境:centos7)

本节演示 .Net Core项目容器和 mssql容器之间的互联互通!

1,创建一个bridge模式的网桥,将网桥连接到mssql容器

2,更改.Net Core项目 数据库连接配置文件,并生成镜像,创建一个新的容器并连接到bridge网桥

3,更改Nginx反向代理配置文件,连接到bridge网桥, 并重启Nginx

第一步:创建bridge网桥,将网桥连接到mssql容器

使用 docker network ls 查看容器默认支持网络

docker network ls

使用docker network create xxx 创建自定义网桥网络,默认就是bridge模式

docker network create test_network

把这个网桥连接Sql Server 的容器

docker network connect test_network mssqlserver

第二步:更改.NetCore项目数据库连接配置文件,并创建容器

将连接字符串当中 Data Source对应的地址改为 mssql的容器名称,例如本示例中的:mssqlserver

然后重新生成镜像文件

docker build -t myapidemo:1.0 .

接下来创建容器,注意了!、注意了!注意了!

创建容器的时候一定要指定网桥 --network=test_network 表示将该容器连接到 test_network 网桥

docker run --name=myapidemo -d -p 9020:80 --network=test_network myapidemo:1.0

从上图可以看到,容器成功运行!但是如何验证 应用项目容器 是否和 mssqlserver容器链接上了呢?

很简单,通过应用接口向数据库插入一条数据,如果插入成功,不就证明链接成功了么!

看,数据成功的插入到数据库了!

以上作为测试可以,但正式项目中还是要用Nginx来反向代理!

第三步:更改Nginx反向代理配置文件,连接到bridge网桥, 并重启Nginx

前边章节已经演示过如何配置Nginx反向代理,这里就不重复演示了!

参考:Docker学习笔记之-部署.Net Core 3.1项目到Docker容器,并使用Nginx反向代理(CentOS7)(二)

这里直接修改 root/nginx/conf 路径下的 default.conf 文件

将 proxy_pass 后边的 IP地址 修改为 .net Core项目的容器名,如下:http://myapidemo:80

server {
listen 80;
charset utf-8;
server_name myapidemo; location / {
proxy_pass http://myapidemo:80;
proxy_redirect default; # root /usr/share/nginx/html;
# index index.html index.htm;
}
}

修改完后,保存退出!并重启 Nginx容器

docker restart nginxapi

然后使用Nginx代理的端口4030 添加一条数据!

数据添加成功!

Docker学习笔记之--.Net Core项目容器连接mssql容器(环境:centos7)的更多相关文章

  1. Docker学习笔记之--.Net Core应用容器通过网桥连接Redis容器(环境:centos7)

    上节演示通过应用容器连接sql server容器,连接:Docker学习笔记之--.Net Core项目容器连接mssql容器(环境:centos7) 本节演示安装 redis容器,通过网桥连接 先决 ...

  2. Docker学习笔记(二):端口映射与容器互联

    端口映射 使用docker run时,可以指定-P(大写)与-p(小写)参数映射端口. docker run -P -P(大写)会随机映射一个端口到容器的内部端口 -> [feifei@ffma ...

  3. Docker学习笔记之-部署.Net Core 3.1项目到Docker容器,并使用Nginx反向代理(CentOS7)(一)

    上一节演示如何安装Docker,链接:Docker学习笔记之-在CentOS中安装Docker 本节演示 将.net core 3.1 部署到docker容器当中,并使用 Nginx反向代理,部署平台 ...

  4. Docker学习笔记 - Docker容器内部署redis

    Docker学习笔记(2-4)Docker应用实验-redist server 和client的安装使用 一.获取redis容器(含客户端和服务端) 二.创建服务端容器 1.在终端A中运行redis- ...

  5. Docker学习笔记之--安装mssql(Sql Server)并使用Navicat连接测试(环境:centos7)

    前一节演示如何使用Nginx反向代理 .net Core项目容器,地址:Docker学习笔记之-部署.Net Core 3.1项目到Docker容器,并使用Nginx反向代理(CentOS7)(二) ...

  6. docker~学习笔记索引

    回到占占推荐博客索引 使用docker也有段时间了,写了不少文章与总结,下面把它整理个目录出来,方便大家去学习与检索! docker~学习笔记索引 docker~linux下的部署和基本命令(2017 ...

  7. docker学习笔记(3)- 镜像

    简介 在docker学习笔记(1)- 架构概述一节中可以看到镜像是docker三大组件之一,可以将Docker镜像类比为虚拟机的模版. 镜像由多个层组成,每层叠加之后从外部看就像一个独立的对象,镜像的 ...

  8. Docker 学习笔记(CentOS 7.1)

    基本概念 Docker 包括三个基本概念 镜像(Image) 容器(Container) 仓库(Repository)理解了这三个概念,就理解了 Docker 的整个生命周期. Docker 镜像 D ...

  9. docker学习笔记1 -- 安装和配置

    技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔 ...

随机推荐

  1. Python3 环境搭建 保姆式 详细教程!真手把手教学!

    本文我们将向大家介绍如何在本地搭建 Python3 开发环境. Python3 可应用于多平台包括 Windows.Linux 和 Mac OS X. Unix (Solaris, Linux, Fr ...

  2. 单调队列优化O(N)建BST P1377 [TJOI2011]树的序

    洛谷 P1377 [TJOI2011]树的序 (单调队列优化建BST 链接 题意分析 本题思路很简单,根据题意,我们利用所给的Bst生成序将Bst建立起来,然后输出该BST的先序遍历即可: 但,如果我 ...

  3. Centos-内核核心组成

    linux内核,相当于linux大脑,高可靠和高稳定都是针对内核来说 完整linux核心组成部分 1. 内存管理 合理有效的管理整个系统的物理内存,同时快速响应内核各子系统对内存分配的请求 2. 进程 ...

  4. Python-通过twisted实现数据库异步插入?

    如何通过twisted实现数据库异步插入? 1. 导入adbapi 2. 生成数据库连接池 3. 执行数据数据库插入操作 4. 打印错误信息,并排错 #!/usr/bin/python3 __auth ...

  5. GUI应用编程初体验

    不同平台的GUI实现原理是一样的. 本实验基于 windos平台. 先捋一捋概念 什么是消息队列(Message Queue)假 设一个场景:系统正在处理WM_PAINT消息,就在这时用户在键盘上敲击 ...

  6. puts()和gets()函数

    puts()和gets()函数 1. puts()函数 puts()函数用来向标准输出设备(屏幕)写字符串并换行, 其调用格式为: puts(s); 其中s为字符串变量(字符串数组名或字符串指针). ...

  7. Android使用Mono c#分段列表视图

    下载source code - 21.7 KB 你想知道如何把多个ListView控件放到一个布局中,但是让它们在显示时表现正确吗 多个列表项?你对它们正确滚动有问题吗?这个例子将向你展示如何组合单独 ...

  8. 11 . Nginx核心原理讲解

    应用场景优缺点 应用场景 // 1.静态请求 // 2.反向代理 // 3.负载均衡 // 4.资源缓存 // 5.安全防护 // 6.访问限制IP // 7.访问认证 /* 核心主要是以下三个应用: ...

  9. Angluar2 项目搭建

    一 使用 Angular CLI 官方脚手架 1.安装 cli npm install -g @angular/cli 2.创建工作空间和初始应用 ng new my-app 二 tsLint 代码格 ...

  10. Linux_centOS_5.7_64下如何安装jdk1.8&mysql

    本文主要介绍的是如何是Linux环境下安装JDK的,因为Linux环境下,很多时候也离不开Java的,下面笔者就和大家一起分享如何jdk1.8的过程吧. JDK安装 环境 操作系统:Centos7_6 ...