我试图创建两个扩展坞镜像:ASP.NET core和postgresq,但连接字符串无法正确识别端口.

这是docker-compose.yml号文件:

version: '3.4'


networks:
  -default:
    driver: bridge

services:
  netcoreapi:
    image: netcoreapi:latest
    depends_on:
      - "postgres_image"
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "3000:80"
    networks:
        - default
    environment:
      netcoreapiContext: "host=postgres_image;port=5432;database=gr10_db;username=gr10;password=12345678"

  postgres_image:
    image: postgres:latest
    ports:
      - "5432"
    restart: always
    volumes:
      - db_volume:/var/lib/postgresql/data
    environment:
      POSTGRES_USER: "gr10"
      POSTGRES_PASSWORD: "12345678"
      POSTGRES_DB: "gr10_db"
    networks:
       - default

volumes:
  db_volume:

这是我的appsettings.json分:

"AllowedHosts": "*",
  "ConnectionStrings": {
     "netcoreapiContext": "Server=127.0.0.1; port=5432;Database=gr10_db;Username=gr10;Password=12345678"
  }

然而,当我测试数据库时,它向我返回以下消息:

System.ArgumentException:不支持关键字:‘port’. at Microsoft.Data.Common.DbConnectionOptions.ParseInternal(Dictionary2可解析,字符串连接字符串,布尔型内建链,词典`2同义词,布尔型第一键)

如果有人能帮我们,我将不胜感激

推荐答案

试着这样做:

"netcoreapiContext":"Host=127.0.0.1;Port=5432;Database=gr10_db;Username=gr10;Password=12345678"

Npgsql docshere中可以找到一些连接PostgreSQL连接字符串的示例.

Csharp相关问答推荐

如何在C#中使用并行主义将数据表转换为动态对象

将.NET 8程序集加载到Matlab R2023a中时出现问题

单元测试和MOQ,最佳解决方案

后台线程上的延迟WriteableBitmap写入导致闪烁

为什么xslWriter不总是按照xslWriterSet中指定的格式格式化该文档?

错误401未授权ASP.NET Core.使用JWT创建身份验证/授权

Entity Framework Core 8 dbcontext—无法以多对多关系添加某些行'

应用程序启动器,可 Select 物理屏幕

使用Orleans进行的单元测试找不到接口的实现

在.NET核心项目中创建Startup.cs比在Program.cs中注册服务好吗?

在具有不同属性名称的两个类之间创建关系

如何捕获对ASP.NET核心应用程序的所有请求并将其发送到一个页面

我的MRG32k3a算法实现返回的数字超出了预期的[0,1]范围

正在try 从Blazor中的API读取JSON

使用System.Text.Json进行序列化时发生StackOverflow异常

如何让两个.NET版本不兼容的项目对话?

在扩展方法中,IEnumerable<;T>;不会转换为IEumerable<;T&>

如何在mediatr命令中访问HttpContext而不安装弃用的nuget包

如何使用.NET Aspire从Blazor应用程序与GRPC API通信?

单位中快照的倾斜方向