Open RomainMendez opened 5 months ago
type: docker
name: default
steps:
- name: integration testing
image: quay.io/testcontainers/dind-drone-plugin
environment:
CI_WORKSPACE: "/drone/src"
INTEGRATION_TEST: "YES"
settings:
# This specifies the command that should be executed to perform build, test and
# integration tests. Not to be confused with Drone's `command`:
cmd: ./run_test.sh
# This image will run the cmd with your build steps
build_image: python:3.11.7-bookworm
# Not mandatory; enables pre-fetching of images in parallel with the build, so may save
# time:
prefetch_images:
- "tomsquest/docker-radicale:latest"
# Not mandatory; sets up image name 'aliases' by pulling from one registry and tagging
# as a different name. Intended as a simplistic mechanism for using a private registry
# rather than Docker Hub for a known set of images. Accepts a dictionary of
# private registry image name to the Docker Hub image that it is a substitute for.
# Note that all images are pulled synchronously before the build starts, so this is
# inefficient if any unnecessary images are listed.
image_aliases:
tomsquest/docker-radicale:latest: tomsquest/docker-radicale:latest
volumes:
- name: dockersock
path: /var/run
# Specify docker:dind as a service
services:
- name: docker
image: docker:dind
privileged: true
volumes:
- name: dockersock
path: /var/run
volumes:
- name: dockersock
temp: {}
So the IP field is empty, I've checked the machine under which it is running and I see a docker0 socket existing.
After more debugging, it appears to be a bug in how testcontainers uses the daemon, as using the docker pluging directly seems to work just fine. There's an issue about this topic on the main repo
So I found the issue, docker:dind by default uses TLS nowadays, so the plugin should in the doc force the usage of TLS and add the certs from the service, should I add a PR ?
U do not have to use this plugin at all. Same this can be done by this:
kind: pipeline
name: default
steps:
- name: integration testing
image: python:3.11.7-bookworm
privileged: true
commands:
- ./run_test.sh
volumes:
- name: docker
path: /var/run/docker.sock
volumes:
- name: docker
host:
path: /var/run/docker.sock
Sorry for the extensive delay - this repo is not under active maintenance.
As per #32 I'm proposing that this repository be formally archived; if you need to continue using it you're welcome to fork, but it's become unviable for me or the Testcontainers team to maintain.
Hi everyone, I'm troubleshooting my Drone CI pipeline using the given example, and I've found that my build container is trying to reach localhost. And while I observe the containers being brought up on the machine (and exposing ports 2375 and 2376), the "DOCKER_IP" value in "command.sh" is empty I'm not sure how to fix this.