首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >支持Docker的ASP.NET核心:连接被拒绝

支持Docker的ASP.NET核心:连接被拒绝
EN

Stack Overflow用户
提问于 2017-08-17 00:05:02
回答 3查看 3.1K关注 0票数 3

我有一个支持.NET的ASP核心(v2.0)应用程序。并且我想在启动我的应用程序时启动Oracle数据库。这是我的docker-compose文件的样子:

代码语言:javascript
复制
version: '3'

services:
  devarttestapp:
    image: devarttestapp
    build:
      context: ./DevartTestApp
      dockerfile: Dockerfile

  oracledb:
    image: sath89/oracle-12c
    ports: 
      - "1521:1521"

我使用用于Oracle的Devart数据提供程序dotConnect。

代码语言:javascript
复制
var conn = new Devart.Data.Oracle.OracleConnection();
conn.ConnectionString = Environment.GetEnvironmentVariable("ORACLE_CONNECTION_STRING");
try
{
    conn.Open();
}
catch (Exception e)
{
    Console.WriteLine(e);
    throw;
}

但是当我尝试连接到创建的Oracle DB容器的数据库时,我得到了以下异常:

System.Net.Internals.SocketExceptionFactory+ExtendedSocketException (连接被拒绝127.0.0.1:1521)

我还尝试在我的docker-compose文件中包含depends_on以及网络选项,结果相同。

此异常的原因可能是什么?

我该如何解决这个问题呢?

EN

回答 3

Stack Overflow用户

发布于 2017-08-17 01:54:03

在容器中,您可以将此命令的输出发送给我吗?

apt-get update && apt-get install nmap -y && nmap -p 1521 localhost

如果您不熟悉如何在容器内访问bash,可以使用以下方法:

找到您的容器ID或名称:docker ps连接到BASH:docker exec -it >containerID< /bin/bash

我有一种感觉,他的问题与Oracle有关,而不是Docker,因为您的docker-compose文件看起来是正确的。可能监听程序尚未启用。如果nmap指出端口不是open,我也会非常感谢:lsnrctl status的输出。

https://docs.oracle.com/cd/E11882_01/network.112/e41945/listenercfg.htm#NETAG010

票数 1
EN

Stack Overflow用户

发布于 2017-11-04 05:28:55

我在我的mac上也遇到了同样的问题。我使用大于9000的端口解决了这个问题。

票数 0
EN

Stack Overflow用户

发布于 2020-05-23 09:53:51

只需在您的连接字符串中添加SslMode=None;

代码语言:javascript
复制
  "ConnectionStrings": {
    "DefaultConnection": "Server=db-host; Database=db-name; Uid=db-user; Pwd=db-pwd; SslMode=None;"
  },
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45718332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档