Я создал экземпляр Postgres с помощью testcontainers. Контейнер запускается, но я не могу получить к нему доступ.
Я попытался подключиться к контейнерной БД с помощью DBeaver. В консоли eclipse вроде все нормально:
01: 29: 34.662 [основной] DEBUG com.github.dockerjava.core.command.AbstrDockerCmd - Cmd: com.github.dockerjava.core.command.CreateContainerCmdImpl@73386d72 [name =, hostName =, domainName =, user =, attachStdin =, attachStdout =, attachStderr =, portSpecs =, tty =, stdinOpen =, stdInOnce =, env = {POSTGRES_USER = test, POSTGRES_PASSWORD = test, POSTGRES_DB = ASIGDB_TEST}
Вот мой код:
public class CustomPostgresContainer extends PostgreSQLContainer<CustomPostgresContainer>{
private static final String IMAGE_VERSION = "postgres:9.6";
private static CustomPostgresContainer customPostgresContainer;
private static final int EXPOSED_PORT = 5555;
private static final String DB_NAME = "ASIGDB_TEST";
private static final String DB_USER= "test";
private static final String DB_PASSWORD= "test";
public CustomPostgresContainer() {
super(IMAGE_VERSION);
}
public static CustomPostgresContainer getCustomPostgresContainerInstance() {
if(customPostgresContainer == null) {
return extracted().withExposedPorts(EXPOSED_PORT)
.withDatabaseName(DB_NAME)
.withUsername(DB_USER)
.withPassword(DB_PASSWORD);
}
return customPostgresContainer;
}
private static CustomPostgresContainer extracted() {
return new CustomPostgresContainer();
}
@Override
public void start() {
super.start();
}
@Override
public void stop() {
//do nothing, JVM handles shut down
}
}
Я получил:
Подключение к localhost: 5555 отказано. Убедитесь, что имя хоста и порт указаны правильно, и что почтмейстер принимает соединения TCP / IP.
Кто-нибудь знает что происходит?