Skip to content

Latest commit

 

History

History
59 lines (52 loc) · 2.11 KB

README.md

File metadata and controls

59 lines (52 loc) · 2.11 KB

Docker Remote Deployment Action

A GitHub Action that supports docker-compose and Docker Swarm deployments on a remote host using SSH.

The Action is adapted from work by wshihadeh and TapTap21

Example

Below is a brief example on how the action can be used:

- 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 ie (user@host).

remote_docker_port

Remote Docker ssh port ie (22).

ssh_public_key

Remote Docker SSH public key eg (~/.ssh/rsa_id.pub).

ssh_private_key

SSH private key used to connect to the docker host eg (~/.ssh/rsa_id).

args

Deployment command args.

deployment_mode

Deployment mode either docker-swarm or docker-compose. Default is docker-compose.

copy_stack_file

Copy stack file to remote server and deploy from the server. Default is false.

deploy_path

The path where the stack files will be copied to. Default ~/docker-deployment.

stack_file_name

Docker stack file used. Default is docker-compose.yml.

keep_files

Number of the files to be kept on the server. Default is 3.

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.