Logré usar docker-compose para enviar imágenes a un host remoto utilizando la siguiente imagen.
tmaier / docker-compose: último
Esta es la imagen básica de docker con docker-compose instalado.
Mi bitbucket-pipelines.yml
aspecto es este:
- step:
image: tmaier/docker-compose:latest
script:
- (umask 077 ; echo $DOCKER_PRIVATE_KEY | base64 -d > ./keys/key.pem)
- export DOCKER_CERT_PATH=./keys/
- export DOCKER_TLS_VERIFY="1"
- export DOCKER_HOST=tcp://<DOCKER_HOST_IP>:2376
- docker login --username $DOCKER_HUB_USERNAME --password $DOCKER_HUB_PASSWORD
- docker-compose up -d <service>
He registrado en mi repositorio ca.pem
y cert.pem
necesitado por docker-compose en el keys
directorio. La clave privada se guarda codificada en base64, como una variable segura en las variables de entorno de las tuberías de Bitbucket, por lo que solo la decodifico y la pego keys/key.pem
en la tubería como primer paso.
Tenga en cuenta que utilicé docker login
después de configurar las variables de entorno para el host remoto.