草庐IT

docker安装postgresql

全部标签

docker - 无法连接到 docker 容器中的数据库主机,从 api-service 到 db-service,以便在 golang 中使用 goose 进行迁移

goose是帮助我运行所有*sql文件并在数据库中运行查询的迁移工具。我想在我的api服务的docker容器中使用此工具自动执行迁移(创建表和其他内容)。问题是当docker运行命令“gooserun”时出现错误-gooserun:dialtcp:lookupdbon192.168.63.6:53:nosuchhost。docker-composeservices:db:build:./dbvolumes:-./db/pgdata:/pgdataimage:postgresports:-"5432"restart:alwaysenvironment:-POSTGRES_USER=use

postgresql - 如何将 pq.Int64Array 转换为字符串?

在Golang应用程序中,我对PostgreSQL数据库进行sql查询,它返回了一个int数组。varidentifiers[]pq.Int64Array//ExecuteSQLqueryby"database/sql"package.iferr:=database.DBSQL.QueryRow(sqlStatement.String()).Scan(&identifiers);err!=nil{log.Println(err)utils.ResponseWithError(responseWriter,http.StatusInternalServerError,err.Error(

docker - 未为 ABI0 定义重定位目标 runtime.entersyscallblock

我正在尝试在GoLang下编译一个项目,但在构建时出现错误。事实上,错误是:vendor/github.com/google/netstack/tcpip/link/rawfile.blockingPoll:relocationtargetruntime.entersyscallblocknotdefinedforABI0(butisdefinedforABIInternal).我在goLang12下,在互联网上它说它有一些程序集的问题。所以我下载了goLang10.8并重试了这个过程,但不幸的是,错误仍然存​​在。有没有人知道如何解决这个问题?提前致谢。

Dockerizing 一个面向包的设计去模块应用程序

我正在按照描述的面向包的设计方式尝试go模块here这样多个可执行服务就可以“dockerized”,但我正在努力在一个repo中正确连接。我无法使用这种方法成功构建docker镜像。大多数在线示例都适用于单模块方法,其中main.go和dockerfile位于根文件夹中。我的目录结构是这样的项目1-应用程序接口(interface)-build-服务1-docker文件-服务2-docker文件-命令-服务1-main.go-服务2-main.go-部署-文档-内部的-第三者-go.mod-go.sum-生成文件-vendor#AccepttheGoversionfortheimag

docker - Golang docker library - 挂载主机目录卷

我如何执行相当于:dockerrun-v/host/path:/container/pathimage:tag从Go使用官方docker客户端包?我试过不同的Mounts和Volumesclient.ContainerCreate()function的HostOption和ConfigOption结构中的选项,但不太明白。特别是Volumes成员(map[string]struct{}类型)特别难搞清楚如何使用,我找不到关于结构中应该存在哪些值的任何文档。演示我的问题的代码:packagemainimport("context""github.com/docker/docker/api

go - 在一个 docker 容器中打开 go 代码,在另一个容器中打开 jaegertracing

我有一个go项目,它使用以下命令在一个docker容器中发送OpenTracing跨度,并在它自己的容器中运行jaegertracing:dockerrun-p6831:6831/udp-p16686:16686jaegertracing/all-in-one:latest当我运行以下go测试代码时,我可以在jaegerui中看到它们:import("testing"//"fmt""io"opentracing"github.com/opentracing/opentracing-go"jaeger"github.com/uber/jaeger-client-go"config"git

postgresql - 使用嵌套对象(结构)在 Go API 中插入数据

我正在创建一个GolangAPI,但遇到了障碍。对于每个POST,这就是我得到的:“错误”:“sql:转换参数$2类型:不支持的类型main.Data,一个结构”我希望我的数据是格式化的"name":"test","other":{"age":"","height":""}}我怎样才能做到这一点?请参阅下面的代码,了解我到目前为止所尝试的内容。模型.gotypeDatastruct{IDint`json:"id"`Namestring`json:"name,omitempty"`Other*Other`json:"other,omitempty"`}typeOtherstruct{Ag

go - 使用 GO111MODULE=on 安装 augustoroman/v8 时遇到问题

我能够完成设置和安装github.com/augustoroman/v8的整个过程——我手动构建了它的V8依赖项。当我运行gotest时,我得到以下结果:PASSokgithub.com/augustoroman/v89.433s我在$GOPATH/src/github.com/augustoroman/v8安装了这个包。到目前为止,一切似乎都在OSX上运行良好。但是,当我尝试在我自己的单独项目中使用import"github.com/augustoroman/v8"导入时,我收到了投诉。回想起来,我意识到我启用了GO111MODULE=on。这促使我在v8文件夹的根目录中添加一个包含

postgresql - 如何使用 go pg CRUD Postgres Point 数据类型

我正在使用Point数据类型在Postgres数据库中存储坐标。如何将Point数据类型映射到Golang数据类型?我没有找到任何相同的文档。 最佳答案 go-pg没有对点类型的本地支持(从PostGIS开始)。我所做的立交桥(可能不是最好的解决方案,但我确实设法让它工作)是在我的模型上放置单独的纬度和经度字段,并在查询本身上使用ColumnExpr使用ST_X(对于经度)和ST_Y(对于纬度,不要忘记)获取单个值。型号:typeMyModelstruct{IDint64NamestringLocationLatfloat64Loc

docker - go get golang-migrate inside of docker 错误

我正在尝试使用Docker在go中设置一个小型的首次应用程序。我想使用cli工具进行go-lang迁移。但是我收到以下错误:packagegithub.com/golang-migrate/migrate/v4/internal/cli:在以下任何一个中找不到包“github.com/golang-migrate/migrate/v4/internal/cli”:/usr/local/go/src/github.com/golang-migrate/migrate/v4/internal/cli(来自$GOROOT)/go/src/github.com/golang-migrate/m