I'm trying to debug my pipeline locally.
My bitbucket-pipelines.yml uses services. I can get everything up and running OK with a database service linked to atlassian/default-image:2 as per this article https://support.atlassian.com/bitbucket-cloud/docs/debug-pipelines-locally-with-docker/.
However, I need the docker service also. Image atlassian/default-image:2 doesn't appear to have 'docker in docker'. How can I acquire a docker service?
# bitbucket-pipelines.yml
image: atlassian/default-image:2
pipelines:
default:
- step:
services:
- docker # how do I get a docker service?
- db
script:
# my steps here requiring both db and docker services
definitions:
services:
db:
image: mysql:5.7
variables:
MYSQL_DATABASE: 'pipelines'
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
MYSQL_USER: 'test_user'
MYSQL_PASSWORD: 'test_user_password'
Hi Chris,
One thing you can do here is add the following option to the command that starts your main container:
-v /var/run/docker.sock:/var/run/docker.sock
This way, the Docker container you start will have access to the Docker daemon of the host system (your machine).
If you are using atlassian/default-image:2 image you will need to install Docker to the container once it starts running, you can find instructions here:
Afterwards you'll be able to execute Docker commands and can proceed with the execution of commands in your script.
Is this something that works for you?
Kind regards,
Theodora
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.