code: def _create_container_args(kwargs):
      
      # Copy over kwargs which can be copied directly
      create_kwargs = {}
      for key in copy.copy(kwargs):
          if key in RUN_CREATE_KWARGS:
              create_kwargs[key] = kwargs.pop(key)
      host_config_kwargs = {}
      for key in copy.copy(kwargs):
          if key in RUN_HOST_CONFIG_KWARGS:
              host_config_kwargs[key] = kwargs.pop(key)
  
      # Process kwargs which are split over both create and host_config
      ports = kwargs.pop('ports', {})
      if ports:
          host_config_kwargs['port_bindings'] = ports
  
      volumes = kwargs.pop('volumes', {})
      if volumes:
          host_config_kwargs['binds'] = volumes
  
      network = kwargs.pop('network', None)
      if network:
          create_kwargs['networking_config'] = {network: None}
          host_config_kwargs['network_mode'] = network
  
      # All kwargs should have been consumed by this point, so raise
      # error if any are left
      if kwargs:
          raise create_unexpected_kwargs_error('run', kwargs)
  
      create_kwargs['host_config'] = HostConfig(**host_config_kwargs)
  
      # Fill in any kwargs which need processing by create_host_config first
      port_bindings = create_kwargs['host_config'].get('PortBindings')
      if port_bindings:
          # sort to make consistent for tests
          create_kwargs['ports'] = [tuple(p.split('/', 1))
                                    for p in sorted(port_bindings.keys())]
      if volumes:
          if isinstance(volumes, dict):
              create_kwargs['volumes'] = [
                  v.get('bind') for v in volumes.values()
              ]
          else:
              create_kwargs['volumes'] = [
                  _host_volume_from_bind(v) for v in volumes
              ]
      return create_kwargs
docs: Convert arguments to create() to arguments to create_container().