# balena-cli deploy without docker installation

**URL:** <https://forums.balena.io/t/balena-cli-deploy-without-docker-installation/277744>\
**Category:** Product support\
**Tags:** balena-cli\
**Created:** [March 25, 2021, 1:38pm UTC](https://forums.balena.io/t/balena-cli-deploy-without-docker-installation/277744 "2021-03-25T13:38:32Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![ben.clerix](https://avatars.discourse-cdn.com/v4/letter/b/73ab20/32.png) [@ben.clerix](https://forums.balena.io/u/ben.clerix)\
**Post date:** [March 25, 2021, 1:38pm UTC](https://forums.balena.io/t/balena-cli-deploy-without-docker-installation/277744/1 "2021-03-25T13:38:32Z")

</div>

Hi,

I’m trying to deploy the following docker-compose file to a multi-container application in BalenaCloud:

```
version: '2'
services:
  redis:
    image: redis:5.0.5

```

When I try this on a pc that does have Docker installed everything works as expected, but when I do this on a pc that does not have docker installed it tells me that Docker is needed.

In the example below I used a fake Docker sock to simulate that Docker is not installed.  
When I remove the fake Docker sock everything is fine.

```
C:\Users\bencl\Desktop\mytest>balena -v
12.43.0

C:\Users\bencl\Desktop\mytest>balena deploy mytest --debug --docker myFakeDockerSock
[debug] new argv=[C:\Program Files\balena-cli\client\bin\node.exe,C:\Program Files\balena-cli\client\bin\run,deploy,mytest,--docker,myFakeDockerSock] length=6
[Debug] Parsing input...
Docker seems to be unavailable. Is it installed and running?
Error: connect ENOENT myFakeDockerSock

For further help or support, visit:
https://www.balena.io/docs/reference/balena-cli/#support-faq-and-troubleshooting

C:\Users\bencl\Desktop\mytest>balena deploy mytest --debug
[debug] new argv=[C:\Program Files\balena-cli\client\bin\node.exe,C:\Program Files\balena-cli\client\bin\run,deploy,mytest] length=4
[Debug] Parsing input...
[Debug] Loading project...
[Debug] Resolving project...
[Debug] docker-compose.yml file found at "C:\Users\bencl\Desktop\mytest"
[Debug] Creating project...
[Info] Everything is up to date (use --build to force a rebuild)
......*snip*

```

It was my understanding that all image building happened in the BalenaCloud servers.  
I understand that in some cases we need to build services locally, but here that is clearly not the case? This redis:5.0.5 image is available in DockerHub: [Docker Hub](https://hub.docker.com/layers/redis/library/redis/5.0.5/images/sha256-35ba26763fe2820eb2dbc988f9bacdbb33613e73fc8e41f8b4ed9be4cc961021?context=explore)  
Even when there still is a service with “build” instead of “image”, then I would expect all building to happen in BalenaCloud?

I thought that this was similar to [ACR Tasks](https://docs.microsoft.com/en-us/azure/container-registry/container-registry-tasks-overview#task-scenarios) for example. (“Build and push a single container image to a container registry on-demand, in Azure, without needing a local Docker Engine installation.”)

This is not a urgent issue, more an inquiry out of curiosity.  
Thanks for your time!

---

<div class="post-metadata">

**Author:** ![zvin](https://avatars.discourse-cdn.com/v4/letter/z/a5b964/32.png) [@zvin](https://forums.balena.io/u/zvin)\
**Post date:** [March 25, 2021, 3:43pm UTC](https://forums.balena.io/t/balena-cli-deploy-without-docker-installation/277744/2 "2021-03-25T15:43:21Z")

</div>

Hello, in order to build on the balena build servers, you should use `balena push`, not `balena deploy`.

---

<div class="post-metadata">

**Author:** ![ben.clerix](https://avatars.discourse-cdn.com/v4/letter/b/73ab20/32.png) [@ben.clerix](https://forums.balena.io/u/ben.clerix)\
**Post date:** [March 25, 2021, 4:07pm UTC](https://forums.balena.io/t/balena-cli-deploy-without-docker-installation/277744/4 "2021-03-25T16:07:29Z")

</div>

Yes, that’s completely true.

We have all our images already built and pushed to a private docker registry.  
In the release step we just use a docker-compose file that references the images in the registry and some registry secrets.  
When running `balena deploy`we don’t need to build anything anymore (in our use case) so we thought that we didn’t need to have docker installed in the release pipeline.  
I realize now that that’s not the use case for everyone.
