{"record":{"id":"f499a3241864e4b2","repo":"hashicorp/vagrant","slug":"the-box-you-re-attempting-to-add-doesn-t-support-t","errorCode":null,"errorMessage":"The box you're attempting to add doesn't support the provider\nyou requested. Please find an alternate box or use an alternate\nprovider. Double-check your requested provider to verify you didn't\nsimply misspell it.\n\nIf you're adding a box from HashiCorp's Vagrant Public Registry, make sure the box is\nreleased.\n\nName: %{name}\nAddress: %{url}\nRequested provider: %{requested}","messagePattern":"The box you're attempting to add doesn't support the provider\nyou requested\\. Please find an alternate box or use an alternate\nprovider\\. Double-check your requested provider to verify you didn't\nsimply misspell it\\.\n\nIf you're adding a box from HashiCorp's Vagrant Public Registry, make sure the box is\nreleased\\.\n\nName: %(.+?)\nAddress: %(.+?)\nRequested provider: %(.+?)","errorType":"exception","errorClass":"Vagrant::Errors::BoxAddNoMatchingProvider","httpStatus":null,"severity":"info","filePath":"lib/vagrant/action/builtin/box_add.rb","lineNumber":272,"sourceCode":"\n          if env[:box_name] && metadata.name != env[:box_name]\n            raise Errors::BoxAddNameMismatch,\n              actual_name: metadata.name,\n              requested_name: env[:box_name]\n          end\n\n          metadata_version  = metadata.version(\n            version || \">= 0\",\n            provider: provider,\n            architecture: architecture,\n          )\n\n          if !metadata_version\n            if provider\n              # If no version found that supports the provider, then the\n              # box has no support for the provider\n              if !metadata.version(\">= 0\", provider: provider)\n                raise Errors::BoxAddNoMatchingProvider,\n                  name: metadata.name,\n                  requested: Array(provider).join(\", \"),\n                  url: display_url\n              end\n\n              # Get all versions that support the provider and architecture\n              available_versions = metadata.versions(\n                provider: provider,\n                architecture: architecture\n              )\n\n              # If no versions are found, then the box does not provide\n              # support for the requested architecture using the requested\n              # architecture\n              if available_versions.empty?\n                supported_providers = metadata.versions(architecture: architecture).map do |v|\n                  metadata.version(v).providers(architecture)\n                end.compact.uniq.sort","sourceCodeStart":254,"sourceCodeEnd":290,"githubUrl":"https://github.com/hashicorp/vagrant/blob/35f3160f4ad6edc3a9f3aa9570adfc1a4d73aaa5/lib/vagrant/action/builtin/box_add.rb#L254-L290","documentation":"In the `vagrant rsync` command loop (rsync.rb:41-53), if the provider implements the proxy_machine capability and returns a non-nil proxy machine, Vagrant warns \"The provider ('%{provider}') for the machine '%{name}' is using a proxy machine. RSync will sync to this proxy instead of directly to the environment itself.\" and reassigns machine = proxy so all rsync targets (hostpaths/guestpaths) resolve against the proxy VM. This is informational, expected behavior for providers that run environments inside a helper VM — classically the Docker provider proxying to its boot2docker/host VM.","triggerScenarios":"Running `vagrant rsync [name]` on a machine whose provider returns a proxy from the proxy_machine capability — e.g. docker-provider containers backed by a docker-machine/Hyper-V/WSL2 helper VM, where the rsync destination must be the VM hosting the container rather than the container itself.","commonSituations":"Docker provider on macOS/Windows where containers run inside a proxy VM; users surprised that rsync output references a different machine name; harmless but worth confirming the proxy VM actually mounts the expected guestpath.","solutions":["Treat it as informational — rsync is deliberately targeting the proxy VM that hosts your environment.","Confirm the synced folder content landed where the container expects it: `vagrant docker-ssh` (or ssh into the proxy VM) and inspect the guestpath.","If the proxy redirection is unexpected, check that you are not accidentally targeting a docker-provider machine; address machines by name: `vagrant rsync <name>`."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"# Know your topology before syncing: providers with a proxy_machine capability\n# (e.g. docker provider on a host VM) redirect rsync to the proxy.\nvagrant status   # confirm which provider backs each machine\nvagrant rsync --help  # then target explicitly: vagrant rsync <name>","typeGuard":"# Where you hold a machine object\ndef rsync_redirected?(machine)\n  return false unless machine.provider.capability?(:proxy_machine)\n  !machine.provider.capability(:proxy_machine).nil?\nend","tryCatchPattern":null,"preventionTips":["Expect the proxy redirection with docker-provider environments on macOS/Windows; it is by design, not a fault.","After rsync, verify content inside the container (not just the proxy VM) so path assumptions are caught early.","Address machines by name in multi-machine projects to avoid rsyncing a proxy you did not intend."],"tags":["rsync","vagrant","docker-provider","proxy-machine","synced-folders"],"backgroundTag":"provider-proxy-machine","analyzedSha":"35f3160f4ad6edc3a9f3aa9570adfc1a4d73aaa5","analyzedAt":"2026-08-21T13:34:32.514Z","schemaVersion":2},"datasetVersion":"2026-08-21T18:17:14.833Z"}