<?xml version="1.0" encoding="utf-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Разработка и тестирование - Форум программистов и сисадминов Киберфорум</title>
		<link>https://www.cyberforum.ru/</link>
		<description>Обсуждение сред программирования, средств отладки и тестирования, QA</description>
		<language>ru</language>
		<lastBuildDate>Tue, 11 Aug 2026 18:14:30 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>60</ttl>
		<image>
			<url>https://www.cyberforum.ru//cyberstatic.net/images/misc/rss.jpg</url>
			<title>Разработка и тестирование - Форум программистов и сисадминов Киберфорум</title>
			<link>https://www.cyberforum.ru/</link>
		</image>
		<item>
			<title>Docker-Compose + микросервисы - DevOps, облачные платформы</title>
			<link>https://www.cyberforum.ru/devops-cloud/thread3224952.html</link>
			<pubDate>Wed, 05 Aug 2026 21:31:51 GMT</pubDate>
			<description>Здравствуйте, уважаемые DevOps инженеры, столкнулся с проблемой, знаю, что в Docker-Compose на...</description>
			<content:encoded><![CDATA[<div>Здравствуйте, уважаемые DevOps инженеры, столкнулся с проблемой, знаю, что в Docker-Compose на прямую нельзя обращаться к контейнерам через localhost, но при обращение по имени к контейнеру возникает проблема, из-за локальных настроек Spring, где я использовал localhost, что в результате привело к ситуации, когда Config-Service зарегистрировался в Eureka от Spring Cloud бзе проблем, но при этом, другой сервис например Auth-Service при попытке получить конфигурацию из Config-Service пытается из-за локальных настроек сервисов обратиться к Config-Service по localhost, что в Docker compose создает проблему. Хотелось бы узнать, каким образом можно решить данную проблему, заранее спасибо за ответы всем не равнодушным &lt;3<br />
Прикрепляю к теме, пример application.property из Auth-Service + Docker-Compose<br />
<div class="printablecode">
	<div class="smallfont">:</div>
	<hr /><code dir="ltr">Docker-Compose<br />
version: '3.8'<br />
networks:<br />
&nbsp; bank-network:<br />
&nbsp; &nbsp; driver: bridge<br />
volumes:<br />
&nbsp; postgres-auth-data:<br />
&nbsp; redis-auth-data:<br />
&nbsp; redis-api-getaway:<br />
&nbsp; kafka-bus-data:<br />
services:<br />
&nbsp; postgres-auth:<br />
&nbsp; &nbsp; image: postgres:15-alpine<br />
&nbsp; &nbsp; container_name: bank-postgres-auth<br />
&nbsp; &nbsp; environment:<br />
&nbsp; &nbsp; &nbsp; POSTGRES_USER: dev<br />
&nbsp; &nbsp; &nbsp; POSTGRES_PASSWORD: dev123<br />
&nbsp; &nbsp; &nbsp; POSTGRES_DB: auth_db<br />
&nbsp; &nbsp; ports:<br />
&nbsp; &nbsp; &nbsp; - &quot;5433:5432&quot;<br />
&nbsp; &nbsp; volumes:<br />
&nbsp; &nbsp; &nbsp; - postgres-auth-data:/var/lib/postgresql/data<br />
&nbsp; &nbsp; networks:<br />
&nbsp; &nbsp; &nbsp; - bank-network<br />
&nbsp; &nbsp; healthcheck:<br />
&nbsp; &nbsp; &nbsp; test: &#91;&quot;CMD-SHELL&quot;,&nbsp; &quot;pg_isready -U dev -d auth_db&quot;&#93;<br />
&nbsp; &nbsp; &nbsp; interval: 10s<br />
&nbsp; &nbsp; &nbsp; timeout: 5s<br />
&nbsp; &nbsp; &nbsp; retries: 5<br />
&nbsp; &nbsp; restart: unless-stopped<br />
&nbsp; redis-auth:<br />
&nbsp; &nbsp; image: redis:7.2-alpine<br />
&nbsp; &nbsp; container_name: bank-redis-auth<br />
&nbsp; &nbsp; ports:<br />
&nbsp; &nbsp; &nbsp; - &quot;6379:6379&quot;<br />
&nbsp; &nbsp; command: redis-server --requirepass redis123<br />
&nbsp; &nbsp; volumes:<br />
&nbsp; &nbsp; &nbsp; - redis-auth-data:/data<br />
&nbsp; &nbsp; healthcheck:<br />
&nbsp; &nbsp; &nbsp; test: &#91;&quot;CMD&quot;, &quot;redis-cli&quot;, &quot;-a&quot;, &quot;redis123&quot;, &quot;ping&quot;&#93;<br />
&nbsp; &nbsp; &nbsp; interval: 10s<br />
&nbsp; &nbsp; &nbsp; timeout: 5s<br />
&nbsp; &nbsp; &nbsp; retries: 5<br />
&nbsp; &nbsp; restart: unless-stopped<br />
&nbsp; redis-getaway:<br />
&nbsp; &nbsp; image: redis:7.2-alpine<br />
&nbsp; &nbsp; container_name: bank-redis-gateway<br />
&nbsp; &nbsp; command: redis-server --requirepass redis123<br />
&nbsp; &nbsp; ports:<br />
&nbsp; &nbsp; &nbsp; - &quot;6380:6379&quot;<br />
&nbsp; &nbsp; volumes:<br />
&nbsp; &nbsp; &nbsp; - redis-api-getaway:/data<br />
&nbsp; &nbsp; networks:<br />
&nbsp; &nbsp; &nbsp; - bank-network<br />
&nbsp; &nbsp; healthcheck:<br />
&nbsp; &nbsp; &nbsp; test: &#91;&quot;CMD&quot;, &quot;redis-cli&quot;, &quot;-a&quot;, &quot;redis123&quot;, &quot;ping&quot;&#93;<br />
&nbsp; &nbsp; &nbsp; interval: 10s<br />
&nbsp; &nbsp; &nbsp; timeout: 5s<br />
&nbsp; &nbsp; &nbsp; retries: 5<br />
&nbsp; &nbsp; restart: unless-stopped<br />
&nbsp; kafka-bus:<br />
&nbsp; &nbsp; image: apache/kafka:3.8.0<br />
&nbsp; &nbsp; container_name: bank-kafka-bus<br />
&nbsp; &nbsp; ports:<br />
&nbsp; &nbsp; &nbsp; - &quot;9092:9092&quot;<br />
&nbsp; &nbsp; environment:<br />
&nbsp; &nbsp; &nbsp; KAFKA_NODE_ID: 0<br />
&nbsp; &nbsp; &nbsp; KAFKA_PROCESS_ROLES: broker,controller<br />
&nbsp; &nbsp; &nbsp; KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093<br />
&nbsp; &nbsp; &nbsp; KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka-bus:9092<br />
&nbsp; &nbsp; &nbsp; KAFKA_CONTROLLER_LISTENER_NAMES: CONTROLLER<br />
&nbsp; &nbsp; &nbsp; KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT<br />
&nbsp; &nbsp; &nbsp; KAFKA_CONTROLLER_QUORUM_VOTERS: 0@kafka-bus:9093<br />
&nbsp; &nbsp; &nbsp; KAFKA_LOG_DIRS: /tmp/kraft-combined-logs<br />
&nbsp; &nbsp; &nbsp; KAFKA_NUM_PARTITIONS: 3<br />
&nbsp; &nbsp; &nbsp; KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1<br />
&nbsp; &nbsp; &nbsp; KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1<br />
&nbsp; &nbsp; &nbsp; KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1<br />
&nbsp; &nbsp; volumes:<br />
&nbsp; &nbsp; &nbsp; - kafka-bus-data:/var/lib/kafka/data<br />
&nbsp; &nbsp; networks:<br />
&nbsp; &nbsp; &nbsp; - bank-network<br />
&nbsp; &nbsp; healthcheck:<br />
&nbsp; &nbsp; &nbsp; test: &#91;&quot;CMD-SHELL&quot;, &quot;/opt/kafka/bin/kafka-topics.sh --bootstrap-server localhost:9092 --list&quot;&#93;<br />
&nbsp; &nbsp; &nbsp; interval: 10s<br />
&nbsp; &nbsp; &nbsp; timeout: 10s<br />
&nbsp; &nbsp; &nbsp; retries: 10<br />
&nbsp; &nbsp; restart: unless-stopped<br />
&nbsp; discovery-service:<br />
&nbsp; &nbsp; build:<br />
&nbsp; &nbsp; &nbsp; context: ./discovery-service<br />
&nbsp; &nbsp; &nbsp; dockerfile: Dockerfile<br />
&nbsp; &nbsp; container_name: bank-discovery<br />
&nbsp; &nbsp; ports:<br />
&nbsp; &nbsp; &nbsp; - &quot;8761:8761&quot;<br />
&nbsp; &nbsp; networks:<br />
&nbsp; &nbsp; &nbsp; - bank-network<br />
&nbsp; &nbsp; environment:<br />
&nbsp; &nbsp; &nbsp; SERVER_PORT: 8761<br />
&nbsp; &nbsp; healthcheck:<br />
&nbsp; &nbsp; &nbsp; test: &#91;&quot;CMD&quot;, &quot;true&quot;&#93;<br />
&nbsp; &nbsp; &nbsp; interval: 15s<br />
&nbsp; &nbsp; &nbsp; timeout: 5s<br />
&nbsp; &nbsp; &nbsp; retries: 10<br />
&nbsp; &nbsp; &nbsp; start_period: 40s<br />
&nbsp; &nbsp; restart: unless-stopped<br />
&nbsp; config-service:<br />
&nbsp; &nbsp; build:<br />
&nbsp; &nbsp; &nbsp; context: ./config-service<br />
&nbsp; &nbsp; &nbsp; dockerfile: Dockerfile<br />
&nbsp; &nbsp; container_name: bank-config-service<br />
&nbsp; &nbsp; ports:<br />
&nbsp; &nbsp; &nbsp; - &quot;8880:8880&quot;<br />
&nbsp; &nbsp; environment:<br />
&nbsp; &nbsp; &nbsp; EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: http://eureka:eureka123@discovery-service:8761/eureka/<br />
&nbsp; &nbsp; &nbsp; SPRING_KAFKA_BOOTSTRAP_SERVERS: kafka-bus:9092<br />
&nbsp; &nbsp; networks:<br />
&nbsp; &nbsp; &nbsp; - bank-network<br />
&nbsp; &nbsp; depends_on:<br />
&nbsp; &nbsp; &nbsp; kafka-bus:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; &nbsp; discovery-service:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; healthcheck:<br />
&nbsp; &nbsp; &nbsp; test: &#91;&quot;CMD&quot;, &quot;true&quot;&#93;<br />
&nbsp; &nbsp; &nbsp; interval: 15s<br />
&nbsp; &nbsp; &nbsp; timeout: 5s<br />
&nbsp; &nbsp; &nbsp; retries: 10<br />
&nbsp; &nbsp; &nbsp; start_period: 40s<br />
&nbsp; &nbsp; restart: unless-stopped<br />
&nbsp; auth-service:<br />
&nbsp; &nbsp; build:<br />
&nbsp; &nbsp; &nbsp; context: ./auth-service<br />
&nbsp; &nbsp; &nbsp; dockerfile: Dockerfile<br />
&nbsp; &nbsp; container_name: bank-auth<br />
&nbsp; &nbsp; ports:<br />
&nbsp; &nbsp; &nbsp; - &quot;8090:8090&quot;<br />
&nbsp; &nbsp; networks:<br />
&nbsp; &nbsp; &nbsp; - bank-network<br />
&nbsp; &nbsp; environment:<br />
&nbsp; &nbsp; &nbsp; EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: http://eureka:eureka123@discovery-service:8761/eureka/<br />
&nbsp; &nbsp; &nbsp; SPRING_KAFKA_BOOTSTRAP_SERVERS: kafka-bus:9092<br />
&nbsp; &nbsp; depends_on:<br />
&nbsp; &nbsp; &nbsp; postgres-auth:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; &nbsp; redis-auth:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; &nbsp; discovery-service:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; &nbsp; config-service:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; healthcheck:<br />
&nbsp; &nbsp; &nbsp; test: &#91;&quot;CMD&quot;, &quot;true&quot;&#93;<br />
&nbsp; &nbsp; &nbsp; interval: 15s<br />
&nbsp; &nbsp; &nbsp; timeout: 5s<br />
&nbsp; &nbsp; &nbsp; retries: 15<br />
&nbsp; &nbsp; &nbsp; start_period: 90s<br />
&nbsp; &nbsp; restart: unless-stopped<br />
&nbsp; api-getaway:<br />
&nbsp; &nbsp; build:<br />
&nbsp; &nbsp; &nbsp; context: ./api-gateway<br />
&nbsp; &nbsp; &nbsp; dockerfile: Dockerfile<br />
&nbsp; &nbsp; container_name: bank-getaway<br />
&nbsp; &nbsp; ports:<br />
&nbsp; &nbsp; &nbsp; - &quot;8092:8092&quot;<br />
&nbsp; &nbsp; networks:<br />
&nbsp; &nbsp; &nbsp; - bank-network<br />
&nbsp; &nbsp; environment:<br />
&nbsp; &nbsp; &nbsp; EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: http://eureka:eureka123@discovery-service:8761/eureka/<br />
&nbsp; &nbsp; &nbsp; SPRING_KAFKA_BOOTSTRAP_SERVERS: kafka-bus:9092<br />
&nbsp; &nbsp; depends_on:<br />
&nbsp; &nbsp; &nbsp; config-service:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; &nbsp; discovery-service:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; &nbsp; redis-getaway:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; &nbsp; auth-service:<br />
&nbsp; &nbsp; &nbsp; &nbsp; condition: service_healthy<br />
&nbsp; &nbsp; healthcheck:<br />
&nbsp; &nbsp; &nbsp; test: &#91;&quot;CMD&quot;, &quot;true&quot;&#93;<br />
&nbsp; &nbsp; &nbsp; interval: 15s<br />
&nbsp; &nbsp; &nbsp; timeout: 5s<br />
&nbsp; &nbsp; &nbsp; retries: 10<br />
&nbsp; &nbsp; &nbsp; start_period: 60s<br />
&nbsp; &nbsp; restart: unless-stopped</code><hr />
</div><div class="printablecode">
	<div class="smallfont">:</div>
	<hr /><code dir="ltr">#Конфигурация Auth-Service<br />
llogging.charset.console=UTF-8<br />
spring.application.name=auth-service<br />
#Eureka Connection<br />
eureka.client.service-url.defaultZone=http://eureka:eureka123@localhost:8761/eureka/<br />
eureka.instance.prefer-ip-address=true<br />
#Connectuin to Config Service<br />
spring.config.import=optional:configserver:<br />
spring.cloud.config.discovery.enabled=true<br />
spring.cloud.config.discovery.service-id=config-service<br />
#Connection Resource<br />
spring.cloud.config.username=config<br />
spring.cloud.config.password=config123<br />
spring.cloud.config.fail-fast=true<br />
spring.profiles.active=dev<br />
#Kafka for bus<br />
spring.kafka.bootstrap-servers=localhost:9092<br />
spring.kafka.consumer.group-id=auth-service-group<br />
spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.ByteArrayDeserializer<br />
spring.kafka.consumer.value-deserializer=org.apache.kafka.common.serialization.ByteArrayDeserializer<br />
spring.kafka.consumer.auto-offset-reset=earliest</code><hr />
</div><font size="1"><font color="grey"><i>Добавлено через 4 часа 14 минут</i></font></font><br />
Уточнение: В результате попытке запустить Docker-Compose.<br />
1) Discovery-Service успешно запускается (Eureka)<br />
2) Kafka - успешно поднимается<br />
3) Redis + PostgreSQL так же успешно поднялись<br />
4) Config-Service успешно зарегистрирован в Discovery-Service (Eureka)<br />
5) Проблема возникает при попытке, получения property для Auth-Service + Api-Getaway: <br />
Для начала у нас успешным образом происходит подключение к Eureka для получения информации о Config-Service <br />
после чего делается успешный запрос для получения конфигурации, но после чего возникает проблема, срабатывает full-back от Config-Client с запросом на localhost и тем самым из-за настройки в Spring spring.cloud.config.fail-fast=true получаю IllegalArgumentException <br />
<br />
Пример ответа:<br />
<div class="printablecode">
	<div class="smallfont">:</div>
	<hr /><code dir="ltr">2026-08-05T21:28:13.009Z&nbsp; INFO 1 --- &#91;auth-service&#93; &#91;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  main&#93; o.s.c.c.c.ConfigServerConfigDataLoader&nbsp;  : Fetching config from server at : http://172.26.0.6:8880/<br />
2026-08-05T21:28:13.011Z&nbsp; INFO 1 --- &#91;auth-service&#93; &#91;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  main&#93; o.s.c.c.c.ConfigServerConfigDataLoader&nbsp;  : Located environment: name=auth-service, profiles=&#91;default&#93;, label=null, version=1d935b62ef4a76030a14590c860ff2a340878ba6, state=<br />
2026-08-05T21:28:13.011Z&nbsp; INFO 1 --- &#91;auth-service&#93; &#91;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  main&#93; o.s.c.c.c.ConfigServerConfigDataLoader&nbsp;  : Fetching config from server at : http://localhost:8880<br />
2026-08-05T21:28:13.011Z&nbsp; INFO 1 --- &#91;auth-service&#93; &#91;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  main&#93; o.s.c.c.c.ConfigServerConfigDataLoader&nbsp;  : Exception on Url - http://localhost:8880:org.springframework.web.client.ResourceAccessException: I/O error on GET request for &quot;http://localhost:8880/auth-service/dev&quot;: Connection refused. Will be trying the next url if available<br />
2026-08-05T21:28:13.012Z&nbsp; INFO 1 --- &#91;auth-service&#93; &#91;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  main&#93; o.s.c.c.c.ConfigServerConfigDataLoader&nbsp;  : Fetching config from server at : http://localhost:8880</code><hr />
</div></div>

]]></content:encoded>
			<category domain="https://www.cyberforum.ru/devops-cloud/">DevOps, облачные платформы</category>
			<dc:creator>jfre</dc:creator>
			<guid isPermaLink="true">https://www.cyberforum.ru/devops-cloud/thread3224952.html</guid>
		</item>
	</channel>
</rss>
