Heyy,
In my bitbucket-pipelines.yml, I want to be able to build a docker image in my step/script (docker build -t myTag .). To do that I use an image allowing me to do docker in docker (jeroenknoops/docker-docker-dind-bash). However, to build the image, I need the container to be started with the option "-v /var/run/docker.sock:/var/run/docker.sock". Is there a way to do that ? Is there another way to build a docker image from the script?
Thanks for your help!
you can now build docker images right from within pipelines: https://confluence.atlassian.com/bitbucket/running-docker-commands-in-bitbucket-pipelines-879254331.html
Hi Matthieu,
It is possible to build a docker image externally and reference it by adding
image: yourdockerusername/imagename
with the appropriate values to your yaml file (as specified here https://answers.atlassian.com/questions/39140980). Unfortunately there is no way of running docker in docker regardless of image used. This means it is not possible to build docker images from the script.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Thomas,
I believe what Matthieu is looking to do (and I am as well) is what is described in the last section of this article. The hope is that this would actually allow the creation of a docker image from within the script (which could then be pushed to a docker registry, deployed, etc.). I did a little testing locally, and running the docker image as follows did allow me to create docker images from within docker.
docker run -v /var/run/docker.sock:/var/run/docker.sock -ti docker
I'm just starting to experiment with docker deployment strategies, but I am curious if there is any way to add the ability to bind the docker socket on the image used by Pipelines?
Thanks for your help!
Justin
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey Justin,
unfortunately Bitbucket Pipelines doesn't support yet the building of Docker images as part of your build.
We do however hope to get this functionality added soon. You can find the open feature request here: https://bitbucket.org/site/master/issues/12790/building-and-pushing-docker-images
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Jeroen,
Alright, thanks for pointing out the feature request! I'll keep an eye on that.
Justin
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
This is kind of a late comment from me, but you can ln -s the docker socket to inside your $BITBUCKET_CLONE_DIR and refer to that as a volume.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Also an update: Docker build and push (and other operations) are now supported by Pipelines: https://blog.bitbucket.org/2017/04/18/bitbucket-pipelines-supports-building-docker-images-and-service-containers/
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@sandorvasas Do you have an example using ln -s ?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
For weird reason, the forum won't let me post my question; so posting a link to my question in StackOverflow:
This issue is really puzzling and I wonder if anyone can drop in an insight. Thanks!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Atlassian Government Cloud has achieved FedRAMP Authorization at the Moderate level! Join our webinar to learn how you can accelerate mission success and move work forward faster in cloud, all while ensuring your critical data is secure.
Register NowOnline 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.