Не получается обратиться к контейнеру по его хостнейму и внутреннему порту из другого контейнера.
Контейнеры находятся в одном compose файле.
Решил обратиться по hostname:port, через httpClient, чтобы получить ошибку и получил:
`System.Net.Http.HttpRequestException: Name or service not known (keycloak:8080) ---> System.Net.Sockets.SocketException (0xFFFDFFFF): Name or service not known `
Вызывал через:
var metadata = _configuration["Authentication:MetadataAddress"]; // http://keycloak:8080/realms/keycloak-auth/.well-known/openid-configuration
using var response = await _httpClient.GetAsync(metadata!);
response.EnsureSuccessStatusCode();
var jsonResponse = await response.Content.ReadAsStringAsync();
Log.Information($"{jsonResponse}\n");
return Ok(jsonResponse);
Compose выглядит так:
keycloak:
image: quay.io/keycloak/keycloak:26.0.0
container_name: keycloak
command: start-dev
environment:
- KC_HEALTH_ENABLE=true
- KEYCLOAK_ADMIN=admin
- KEYCLOAK_ADMIN_PASSWORD=passwd
volumes:
- ./.containers/identity:/opt/keycloak/data
ports:
- "10001:8080"
post_service:
container_name: post_service
image: post_service
environment:
- ASPNETCORE_ENVIRONMENT=Development
build:
context: .
ports:
- "8082:8080"
networks:
- keycloak_network
- posts_postgres_network
depends_on:
- keycloak
- post_postgres