adjast wss + docker logs

This commit is contained in:
2026-05-11 21:04:39 +03:00
parent 3934a63270
commit 27cdad8703
@@ -23,23 +23,30 @@ public class DockerConfig {
@Bean
public DockerClient dockerClient() {
String hostToUse = dockerHost;
if (hostToUse.contains("2375") || hostToUse.equals("localhost")) {
hostToUse = "unix:///var/run/docker.sock";
}
// 1. Четко определяем путь. Если переменная пуста или кривая - ставим дефолт.
String hostPath = (dockerHost != null && !dockerHost.contains("2375"))
? dockerHost
: "unix:///var/run/docker.sock";
// Создаем URI заранее, чтобы избежать ошибок парсинга в рантайме
java.net.URI dockerUri = java.net.URI.create(hostPath);
DockerClientConfig config = DefaultDockerClientConfig.createDefaultConfigBuilder()
.withDockerHost(hostToUse)
.withDockerHost(hostPath)
.build();
// Явно задаем URI для транспорта, чтобы исключить localhost:2375
// 2. ГЛАВНОЕ ИЗМЕНЕНИЕ:
// Мы передаем URI напрямую в Builder транспорта Apache.
// Это "вырывает" логику переключения у библиотеки docker-java,
// так как транспорт теперь знает только об этом конкретном URI.
DockerHttpClient httpClient = new ApacheDockerHttpClient.Builder()
.dockerHost(java.net.URI.create(hostToUse)) // Принудительный URI
.dockerHost(dockerUri)
.sslConfig(config.getSSLConfig())
.maxConnections(100)
.build();
_logger.info("Fixed Docker Host for transport: {}", hostToUse);
_logger.info("FINAL ARCHITECTURE: Transport locked to {}", dockerUri);
return DockerClientImpl.getInstance(config, httpClient);
}
}