# docker-cp-deploy [![Build Status](https://build.coopcloud.tech/api/badges/coop-cloud/docker-cp-deploy/status.svg)](https://build.coopcloud.tech/coop-cloud/docker-cp-deploy) [Drone plugin](http://plugins.drone.io/) to copy files into a remote docker container. ## Settings ### Required (no default) - **deploy_key**: SSH private key part for ssh public key authentication - **service**: Name of the target service - **dest**: Absolute path to copy files into ### Optional (with defaults) - **source** (default: `.`): Local path to copy from - **host** (default: `swarm.autonomic.zone`): Host to deploy to (don't include `ssh://`) - **port** (default: `222`): SSH port to connect to - **user** (default: `drone`): System user to connect via SSH with - **exec** (default: none): Run a command in the container after copying - **exec_pre** (default: none): Run a command in the container before copying ### Makes me sad they exist - **chdir** (default: none): Add `-C` option to `tar`; i.e. change to a directory first ## Example ```yaml --- kind: pipeline name: deploy to docker container steps: - name: docker cp deploy image: git.coopcloud.tech/coop-cloud/docker-cp-deploy:latest settings: host: swarm.example.com service: foo_bar_com_app dest: /var/www/html/ deploy_key: from_secret: drone_deploy_key ``` ## Publishing The version can be bumped in the [.drone.yml](./.drone.yml) file. We're sticking with `latest` as we iterate on the code right now. If you push a commit to master, the [Drone config](./.drone.yml) will publish to [Docker Hub](https://hub.docker.com/r/3wordchant/docker-cp-deploy).