Docker 从jupyter/pyspark笔记本连接到postgresql

Docker 从jupyter/pyspark笔记本连接到postgresql,docker,pyspark,jupyter-notebook,Docker,Pyspark,Jupyter Notebook,我的postgresql数据库在docker上运行。现在我正在使用pyspark jupyter/pyspark笔记本的docker连接到它。我是这样使用它的: spark = SparkSession \ .builder \ .appName("Python Spark SQL basic example") \ .config("spark.jars", "/home/jovyan/work jupyter/pysp

我的postgresql数据库在docker上运行。现在我正在使用pyspark jupyter/pyspark笔记本的docker连接到它。我是这样使用它的:

spark = SparkSession \
    .builder \
    .appName("Python Spark SQL basic example") \
    .config("spark.jars", "/home/jovyan/work jupyter/pyspark-notebook/postgresql-42.2.18.jar") \
    .getOrCreate()
    
    df = spark.read.format("jdbc"). \
options(
         url='jdbc:postgresql://localhost:5432/practice_data', # jdbc:postgresql://<host>:<port>/<database>
         dbtable='employee_data',
         user='postgres',
         password='docker',
         driver='org.postgresql.Driver').\
         load()
spark=SparkSession\
建筑商先生\
.appName(“Python Spark SQL基本示例”)\
.config(“spark.jars”,“/home/jovyan/work jupyter/pyspark notebook/postgresql-42.2.18.jar”)\
.getOrCreate()
df=spark.read.format(“jdbc”)\
选择权(
url='jdbc:postgresql://localhost:5432/practice_data“,#jdbc:postgresql://:/
dbtable='employee_data',
user='postgres',
密码='docker',
driver='org.postgresql.driver')\
加载()
sparkSession已成功创建,但第二条语句引发错误:

Py4JJavaError: An error occurred while calling o46.load.
: org.postgresql.util.PSQLException: Connection to localhost:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.
    at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:303)
    at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:51)
    at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:225)
    at org.postgresql.Driver.makeConnection(Driver.java:465)
    at org.postgresql.Driver.connect(Driver.java:264)
Py4JJavaError:调用o46.load时出错。
:org.postgresql.util.PSQLException:与本地主机的连接被拒绝:5432。检查主机名和端口是否正确,邮政局长是否接受TCP/IP连接。
位于org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:303)
位于org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:51)
位于org.postgresql.jdbc.PgConnection.(PgConnection.java:225)
位于org.postgresql.Driver.makeConnection(Driver.java:465)
位于org.postgresql.Driver.connect(Driver.java:264)
凭据是正确的,但我怀疑在pyspark笔记本docker中,我没有看到ifconfig或任何网络接口。也许根本就没有网络接口。我无法理解dockerfile,即使我可以安装ifconfig(网络工具)。有谁能告诉我我哪里错了吗

感谢和问候, 苏迪普