Help us shape the future of Go! Take the 2026 Go Developer Survey

questdb

package module
v0.44.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 7, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Container

type Container struct {
	testcontainers.Container
}

Container represents the QuestDB container type used in the module.

func Run

Run creates an instance of the QuestDB container type.

Example
package main

import (
	"context"
	"fmt"
	"log"

	"github.com/testcontainers/testcontainers-go"
	"github.com/testcontainers/testcontainers-go/modules/questdb"
)

func main() {
	// runQuestDBContainer {
	ctx := context.Background()

	questdbContainer, err := questdb.Run(ctx, "questdb/questdb:7.4.2")
	defer func() {
		if err := testcontainers.TerminateContainer(questdbContainer); err != nil {
			log.Printf("failed to terminate container: %s", err)
		}
	}()
	if err != nil {
		log.Printf("failed to start container: %s", err)
		return
	}
	// }

	state, err := questdbContainer.State(ctx)
	if err != nil {
		log.Printf("failed to get container state: %s", err)
		return
	}

	fmt.Println(state.Running)

}
Output:
true

func (*Container) HTTPEndpoint

func (c *Container) HTTPEndpoint(ctx context.Context) (string, error)

HTTPEndpoint returns the HTTP endpoint (Web Console and REST API) of the QuestDB container. The returned URL has the format "http://host:port".

Example
package main

import (
	"context"
	"fmt"
	"log"

	"github.com/testcontainers/testcontainers-go"
	"github.com/testcontainers/testcontainers-go/modules/questdb"
)

func main() {
	ctx := context.Background()

	questdbContainer, err := questdb.Run(ctx, "questdb/questdb:7.4.2")
	defer func() {
		if err := testcontainers.TerminateContainer(questdbContainer); err != nil {
			log.Printf("failed to terminate container: %s", err)
		}
	}()
	if err != nil {
		log.Printf("failed to start container: %s", err)
		return
	}

	// httpEndpoint {
	httpEndpoint, err := questdbContainer.HTTPEndpoint(ctx)
	// }
	if err != nil {
		log.Printf("failed to get HTTP endpoint: %s", err)
		return
	}

	fmt.Println(httpEndpoint != "")

}
Output:
true

func (*Container) InfluxDBEndpoint

func (c *Container) InfluxDBEndpoint(ctx context.Context) (string, error)

InfluxDBEndpoint returns the InfluxDB line protocol endpoint of the QuestDB container. The returned address has the format "host:port".

Example
package main

import (
	"context"
	"fmt"
	"log"

	"github.com/testcontainers/testcontainers-go"
	"github.com/testcontainers/testcontainers-go/modules/questdb"
)

func main() {
	ctx := context.Background()

	questdbContainer, err := questdb.Run(ctx, "questdb/questdb:7.4.2")
	defer func() {
		if err := testcontainers.TerminateContainer(questdbContainer); err != nil {
			log.Printf("failed to terminate container: %s", err)
		}
	}()
	if err != nil {
		log.Printf("failed to start container: %s", err)
		return
	}

	// influxDBEndpoint {
	ilpEndpoint, err := questdbContainer.InfluxDBEndpoint(ctx)
	// }
	if err != nil {
		log.Printf("failed to get InfluxDB line protocol endpoint: %s", err)
		return
	}

	fmt.Println(ilpEndpoint != "")

}
Output:
true

func (*Container) PGEndpoint

func (c *Container) PGEndpoint(ctx context.Context) (string, error)

PGEndpoint returns the PostgreSQL wire protocol connection string for the QuestDB container. The returned URL has the format "postgres://admin:[REDACTED]@host:port/qdb".

Example
package main

import (
	"context"
	"fmt"
	"log"

	"github.com/testcontainers/testcontainers-go"
	"github.com/testcontainers/testcontainers-go/modules/questdb"
)

func main() {
	ctx := context.Background()

	questdbContainer, err := questdb.Run(ctx, "questdb/questdb:7.4.2")
	defer func() {
		if err := testcontainers.TerminateContainer(questdbContainer); err != nil {
			log.Printf("failed to terminate container: %s", err)
		}
	}()
	if err != nil {
		log.Printf("failed to start container: %s", err)
		return
	}

	// pgEndpoint {
	pgEndpoint, err := questdbContainer.PGEndpoint(ctx)
	// }
	if err != nil {
		log.Printf("failed to get PG endpoint: %s", err)
		return
	}

	fmt.Println(pgEndpoint != "")

}
Output:
true

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL