# Docker Remote Deployment Action A [GitHub Action](https://github.com/marketplace/actions/docker-remote-deployment) that supports docker-compose and Docker Swarm deployments on a remote host using SSH. The Action is adapted from work by [wshihadeh](https://github.com/wshihadeh/docker-deployment-action) and [TapTap21](https://github.com/TapTap21/docker-remote-deployment-action) ## Example Below is a brief example on how the action can be used: ```yaml - name: Deploy to Docker swarm uses: sulthonzh/docker-remote-deployment-action@v1 with: remote_docker_host: user@host ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }} ssh_public_key: ${{ secrets.SSH_PUBLIC_KEY }} deployment_mode: docker-swarm copy_stack_file: true deploy_path: /root/my-deployment stack_file_name: docker-compose.yaml keep_files: 5 args: my_applicaion ``` ## Input Configurations ### `remote_docker_host` Remote Docker host. ### `remote_docker_user` Remote Docker user. ### `remote_docker_port` Remote Docker ssh port ie (22). ### `ssh_private_key` SSH private key used to connect to the docker host eg (~/.ssh/rsa_id). ### `ssh_proxy_cmd` SSH ProxyCommand used to connect to the docker host. ### `args` Deployment command args. ### `deploy_path` The absolute path on remote docker host to deploy, default rely on repo working directory. ### `stack_file_name` Compose configuration files. ### `env_file_name` Specify an alternate environment file. ### `docker_prune` A boolean input to trigger docker prune command. Default is false. ### `pre_deployment_command_args` The args for the pre deploument command. ### `pull_images_first` Pull docker images before deploying. Default is false. ### `docker_registry_username` The docker registry username. ### `docker_registry_password` The docker registry password. ### `docker_registry_uri` The docker registry URI. Default is https://registry.hub.docker.com.