Java programımın postgres veritabanıma neden bağlanamadığına dair biraz kaybolacağım. Jdbc ile bir postgres veritabanına bağlanmayı hedefliyorum. Uygulama bir docker konteynerinin içinde çalışmaktır. Benim masaüstünden uygulamayı çalıştırdığınızda beklendiği gibiBir docker kabından postgres bağlama
Connection refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.
, bu bağlar:
this.connection = `DriverManager.getConnection("jdbc:postgresql://<myip>:5432/databasename", "usr", "password");`
ben istisna alıyorum. Onu docker konteynerinden çalıştırdığımda, başarısız olur.
Bu öğleden sonra docker'ı yeni yükledim ve pencereler için çalışmaya başladım, böylece kurulum durumum bunu çalıştırdıktan hemen sonra. İşte benim Dockerfile içeriğini var: Eğer bağlantılarını kabul edecek şekilde yapılandırmak zorunda pg_hba.conf
adlı bir dosya varsa veri klasörü içinde
FROM java:8
ADD VaultServer/
EXPOSE 3971
EXPOSE 3972
ENTRYPOINT ["java", "-jar", "VaultServer.jar"]
Docker deposunun bağlantılarını kabul etmek için [pg_hba.conf] (http://www.postgresql.org/docs/9.1/static/auth-pg-hba-conf.html) dosyasını doğru şekilde yapılandırdınız mı? IP adresi? – dic19
Sanırım. Önceden varsayılan işlem tarafından oluşturulduğundan beri değiştirmediğim yerel makinemdeki bir kurulum. Sadece içinde aşağıdaki etti: # IPv4 yerel bağlantıları: konak tüm 127.0.0.1/32 md5 # IPv6 yerel bağlantıları: Bütün konak :: 1/128 md5 – Andy
bağlanmak istediğiniz gibi görünüyor Bir Docker kabının içindeki bir uygulamadan ana bilgisayarda bir PostgreSQL kurulumu. Eğer durum buysa, http://stackoverflow.com/questions/31249112/allow-docker-container-to-connect-to-a-local-host-postgres-database –