В appsettings.Production. json, у меня есть настройки потребителя, которые определяют файл сертификата
"SslCaLocation": "cacert.pem"
При развертывании изображения с использованием службы контейнеров Azure невозможно найти путь. Я пытался использовать "./cacert.pem", поскольку это linux ОС в azure, он должен идти по текущему пути. Я также попробовал путь COPYDIR для / app в файле docker, но та же проблема при развертывании.
Это развертывание базового приложения do tnet в экземпляре контейнера azure.
У какого-нибудь другого тела была такая же проблема и как она была решена?
Конфиг
{
"consumer": {
"bootstrapservers": "code-eventhub.servicebus.windows.net:9093", //specify your kafka broker address
"groupid": "notification-ms",
"enableautocommit": true,
"statisticsintervalms": 5000,
"sessiontimeoutms": 6000,
"autooffsetreset": 1,
"enablepartitioneof": true,
"SecurityProtocol": 3,
"SaslMechanism": 1, //Plain
"SaslUsername": "$ConnectionString",
"SaslPassword": "Endpoint=sb://sharpcode-eventhub.servicebus.windows.net/;SharedAccessKeyName=notification-ms;SharedAccessKey=key is hidden",
"SslCaLocation": "cacert.pem"
//"Debug": "all"
}
ЖУРНАЛЫ ОШИБОК
[03:10:27 FTL] Application start-up failed
System.InvalidOperationException: ssl.ca.location failed: by_file.c:254: error:0B084002:x509 certificate routines:X509_load_cert_crl_file:system lib:
at Confluent.Kafka.Impl.SafeKafkaHandle.Create(RdKafkaType type, IntPtr config, IClient owner)
at Confluent.Kafka.Consumer`2..ctor(ConsumerBuilder`2 builder)
at Confluent.Kafka.ConsumerBuilder`2.Build()
at NewBenefits.NotificationService.ConsumerWrapper..ctor(ConsumerConfig config, String topicName) in /src/NotificationService/Services/ConsumerWrapper.cs:line 16
at NewBenefits.NotificationService.Services.NotificationService.ExecuteAsync(CancellationToken stoppingToken) in /src/NotificationService/Services/NotificationService.cs:line 33
at Microsoft.AspNetCore.Hosting.HostedServiceExecutor.ExecuteAsync(Func`2 callback, Boolean throwOnFirstFailure)
at Microsoft.AspNetCore.Hosting.WebHost.StartAsync(CancellationToken cancellationToken)
at Microsoft.AspNetCore.Hosting.WebHostExtensions.RunAsync(IWebHost host, CancellationToken token, String startupMessage)
at Microsoft.AspNetCore.Hosting.WebHostExtensions.RunAsync(IWebHost host, CancellationToken token, String startupMessage)
at Microsoft.AspNetCore.Hosting.WebHostExtensions.RunAsync(IWebHost host, CancellationToken token)
at Microsoft.AspNetCore.Hosting.WebHostExtensions.Run(IWebHost host)
at NewBenefits.NotificationService.Program.Main(String[] args) in /src/NotificationService/Program.cs:line 24