code: func (client *sshClient) init() error {
  	client.logger.Debug("Verifying if docker is available")
  	if out, err := client.Run("docker version"); err != nil {
  		if len(out) == 0 {
  			return err
  		}
  		return fmt.Errorf("docker configured incorrectly: %s", out)
  	}
  	client.logger.Debug("Verifying if docker-compose is available")
  	if out, err := client.Run("docker-compose version"); err != nil {
  		if len(out) == 0 {
  			return err
  		}
  		return fmt.Errorf("docker-compose configured incorrectly: %s", out)
  	}
  	return nil
  }
docs: // init runs some initialization commands on the remote server to ensure it's
  // capable of acting as puppeth target.