diff --git a/packages/modules/chromadb/Dockerfile b/packages/modules/chromadb/Dockerfile index bcef380a8..d50dda140 100644 --- a/packages/modules/chromadb/Dockerfile +++ b/packages/modules/chromadb/Dockerfile @@ -1 +1,2 @@ FROM chromadb/chroma:1.0.15 +FROM ollama/ollama:0.9.6 diff --git a/packages/modules/chromadb/src/chromadb-container.test.ts b/packages/modules/chromadb/src/chromadb-container.test.ts index bb38fa54c..d1c369d67 100755 --- a/packages/modules/chromadb/src/chromadb-container.test.ts +++ b/packages/modules/chromadb/src/chromadb-container.test.ts @@ -7,6 +7,7 @@ import { getImage } from "../../../testcontainers/src/utils/test-helper"; import { ChromaDBContainer } from "./chromadb-container"; const IMAGE = getImage(__dirname); +const OLLAMA_IMAGE = getImage(__dirname, 1); describe("ChromaDBContainer", { timeout: 360_000 }, () => { it("should connect", async () => { @@ -36,7 +37,7 @@ describe("ChromaDBContainer", { timeout: 360_000 }, () => { // queryCollectionWithEmbeddingFunction { await using container = await new ChromaDBContainer(IMAGE).start(); - await using ollama = await new GenericContainer("ollama/ollama").withExposedPorts(11434).start(); + await using ollama = await new GenericContainer(OLLAMA_IMAGE).withExposedPorts(11434).start(); await ollama.exec(["ollama", "pull", "nomic-embed-text"]); const client = new ChromaClient({ path: container.getHttpUrl() }); const embedder = new OllamaEmbeddingFunction({ diff --git a/packages/modules/k3s/Dockerfile b/packages/modules/k3s/Dockerfile index af74984d9..aba7fe4d4 100644 --- a/packages/modules/k3s/Dockerfile +++ b/packages/modules/k3s/Dockerfile @@ -1 +1,2 @@ FROM rancher/k3s:v1.33.3-k3s1 +FROM rancher/kubectl:v1.31.2 \ No newline at end of file diff --git a/packages/modules/k3s/src/k3s-container.test.ts b/packages/modules/k3s/src/k3s-container.test.ts index 9869a7c02..de2f977d3 100644 --- a/packages/modules/k3s/src/k3s-container.test.ts +++ b/packages/modules/k3s/src/k3s-container.test.ts @@ -4,6 +4,7 @@ import { getImage } from "../../../testcontainers/src/utils/test-helper"; import { K3sContainer } from "./k3s-container"; const IMAGE = getImage(__dirname); +const KUBECTL_IMAGE = getImage(__dirname, 1); describe("K3sContainer", { timeout: 120_000 }, () => { // K3sContainer runs as a privileged container @@ -74,7 +75,7 @@ describe("K3sContainer", { timeout: 120_000 }, () => { const kubeConfig = container.getAliasedKubeConfig("k3s"); - await using kubectlContainer = await new GenericContainer("rancher/kubectl:v1.31.2") + await using kubectlContainer = await new GenericContainer(KUBECTL_IMAGE) .withNetwork(network) .withCopyContentToContainer([{ content: kubeConfig, target: "/home/kubectl/.kube/config" }]) .withCommand(["get", "namespaces"]) diff --git a/packages/modules/localstack/Dockerfile b/packages/modules/localstack/Dockerfile index c460de1a8..221cb5d73 100644 --- a/packages/modules/localstack/Dockerfile +++ b/packages/modules/localstack/Dockerfile @@ -1 +1,2 @@ FROM localstack/localstack:4.6.0 +FROM amazon/aws-cli:2.7.27 \ No newline at end of file diff --git a/packages/modules/localstack/src/localstack-container.test.ts b/packages/modules/localstack/src/localstack-container.test.ts index 27bdc0107..bc24b5461 100644 --- a/packages/modules/localstack/src/localstack-container.test.ts +++ b/packages/modules/localstack/src/localstack-container.test.ts @@ -4,6 +4,7 @@ import { getImage } from "../../../testcontainers/src/utils/test-helper"; import { LOCALSTACK_PORT, LocalstackContainer } from "./localstack-container"; const IMAGE = getImage(__dirname); +const AWSCLI_IMAGE = getImage(__dirname, 1); const runAwsCliAgainstDockerNetworkContainer = async ( command: string, @@ -47,7 +48,7 @@ describe("LocalStackContainer", { timeout: 180_000 }, () => { .withEnvironment({ SQS_ENDPOINT_STRATEGY: "path" }) .start(); - await using awsCliInDockerNetwork = await new GenericContainer("amazon/aws-cli:2.7.27") + await using awsCliInDockerNetwork = await new GenericContainer(AWSCLI_IMAGE) .withNetwork(network) .withEntrypoint(["bash"]) .withCommand(["-c", "sleep infinity"]) diff --git a/packages/modules/neo4j/src/neo4j-container.test.ts b/packages/modules/neo4j/src/neo4j-container.test.ts index 049f75a6f..f18cd506b 100755 --- a/packages/modules/neo4j/src/neo4j-container.test.ts +++ b/packages/modules/neo4j/src/neo4j-container.test.ts @@ -26,26 +26,6 @@ describe("Neo4jContainer", { timeout: 180_000 }, () => { // } }); - // v5DefaultPassword { - it("should connect to neo4j:v5 with default password", async () => { - await using container = await new Neo4jContainer("neo4j:5.23.0").start(); - const driver = neo4j.driver( - container.getBoltUri(), - neo4j.auth.basic(container.getUsername(), container.getPassword()) - ); - - const session = driver.session(); - const personName = "Chris"; - const result = await session.run("CREATE (a:Person {name: $name}) RETURN a", { name: personName }); - const singleRecord = result.records[0]; - const node = singleRecord.get(0); - expect(node.properties.name).toBe(personName); - - await session.close(); - await driver.close(); - }); - // } - it("should connect with custom password", async () => { // setPassword { await using container = await new Neo4jContainer(IMAGE).withPassword("xyz1234@!").start(); @@ -88,7 +68,7 @@ describe("Neo4jContainer", { timeout: 180_000 }, () => { it("should work with plugin list", async () => { // pluginsList { - await using container = await new Neo4jContainer("neo4j:5.26.5") + await using container = await new Neo4jContainer(IMAGE) .withPlugins([Neo4jPlugin.APOC_EXTENDED, Neo4jPlugin.GRAPH_DATA_SCIENCE]) .withStartupTimeout(120_000) .start(); diff --git a/packages/modules/redis/Dockerfile b/packages/modules/redis/Dockerfile index 956a2b973..23186e9e0 100644 --- a/packages/modules/redis/Dockerfile +++ b/packages/modules/redis/Dockerfile @@ -1 +1,2 @@ FROM redis:8.0 +FROM redis/redis-stack-server:7.4.0-v4 \ No newline at end of file diff --git a/packages/modules/redis/src/redis-container.test.ts b/packages/modules/redis/src/redis-container.test.ts index 42c33f491..a622c24ef 100644 --- a/packages/modules/redis/src/redis-container.test.ts +++ b/packages/modules/redis/src/redis-container.test.ts @@ -5,6 +5,7 @@ import { getImage } from "../../../testcontainers/src/utils/test-helper"; import { RedisContainer } from "./redis-container"; const IMAGE = getImage(__dirname); +const REDISSTACK_IMAGE = getImage(__dirname, 1); describe("RedisContainer", { timeout: 240_000 }, () => { it("should connect and execute set-get", async () => { @@ -106,9 +107,7 @@ describe("RedisContainer", { timeout: 240_000 }, () => { it("should start with redis-stack-server and json module", async () => { // startWithRedisStack { - await using container = await new RedisContainer("redis/redis-stack-server:7.4.0-v4") - .withPassword("testPassword") - .start(); + await using container = await new RedisContainer(REDISSTACK_IMAGE).withPassword("testPassword").start(); const client = createClient({ url: container.getConnectionUrl() }); await client.connect();