Go语言 无法从podman连接到postgres

gab6jxml  于 2023-09-28  发布在  Go
关注(0)|答案(1)|浏览(100)

我试图连接到我的postgres示例,它运行在端口5001,但连接代码返回错误:[error]初始化数据库失败,连接host=localhost user=admin database=contactsdb失败:无法接收消息(意外EOF)
波德曼文字
podman run --name mypostgres -p 50001:5001 -e POSTGRES_DB=contactsdb -e POSTGRES_USER=admin -e POSTGRES_PASSWORD=admin123 -d postgres
这是我的连接代码

dsn:="host=localhost user=admin password=admin123 dbname=contactsdb port=50001"     
    db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})    
    if err!=nil{
        fmt.Println("Could not Connect")    
    } else{
        fmt.Println("Successfully connected",db)
    }

下面是我的postgres容器:

CONTAINER ID  IMAGE                              COMMAND               CREATED            STATUS            PORTS                    NAMES
a238196fb656  docker.io/library/mysql:latest     mysqld                8 hours ago        Up 8 hours        0.0.0.0:33406->3306/tcp  mysq2
4ee241546da5  docker.io/library/adminer:latest   php -S [::]:8080 ...  8 hours ago        Up 8 hours        0.0.0.0:48088->8080/tcp  adminui
e7bee47ab8ac  docker.io/library/postgres:latest  postgres              About an hour ago  Up About an hour  0.0.0.0:50001->5001/tcp  mypostgres
p4tfgftt

p4tfgftt1#

您需要通过将--network host添加到podman run命令中来将容器公开给主机的网络。

相关问题