--- description: | Communicators are remote-access programs Packer uses to perform actions, such as upload files and execute scripts, on the machines Packer creates. page_title: Communicators overview --- # Communicators overview Communicators are the mechanism Packer uses to upload files, execute scripts, etc. with the machine being created. Communicators are configured within the [builder](/packer/docs/templates/legacy_json_templates/builders) section. Packer currently supports three kinds of communicators: - `none`: Packer does not use a communicator and cannot use most provisioners. - [`ssh`](/packer/docs/communicators/ssh): Packer establishes an SSH connection to the machine. This is usually the default. - [`winrm`](/packer/docs/communicators/winrm): Packer establishes a WinRM connection. In addition to the above, some builders have custom communicators they can use. For example, the Docker builder has a "docker" communicator that uses `docker exec` and `docker cp` to execute scripts and copy files. For more details on how to use each communicator, click the links above to be taken to each communicator's page.