title: WSL1, Docker Desktop, volume mounts are always empty
body: <p>I followed <a href="https://nickjanetakis.com/blog/setting-up-docker-for-windows-and-wsl-to-work-flawlessly" rel="nofollow noreferrer">this setup</a> completely. Running WSL1 with Docker Desktop on Windows 10. I am not interested in WSL2 at this point. I don't have Insider Windows.</p>
  
  <p>Now, I am trying to start a container with a volume, so that the container's files are copied into the volume. According to <a href="https://docs.docker.com/storage/volumes/" rel="nofollow noreferrer">official docs</a>:</p>
  
  <blockquote>
    <p>Populate a volume using a container  </p>
    
    <p>If you start a container which creates a new volume, as above, and the container has files or directories in the directory to be mounted (such as /app/ above), the directory’s contents are copied into the volume.</p>
  </blockquote>
  
  <p>So it should be possible, but I must be missing something really basic here, cause it just doesn't work.</p>
  
  <p>I've tried <code>-v vol-name:/path/on/container</code> -> this creates a named volume... somewhere. No clue where, nor how to view it. Doing <code>volume inspect vol-name</code> shows a path that doesn't exist, neither in WSL nor in Docker Host (Windows). I even tried mounting the MobyVM and it isn't there either.</p>
  
  <p>I've tried <code>-v /c/full/path:/path/on/container</code> -> this creates a bind-type mount. It's empty (by design). If it put files under <code>/c/full/path</code>, I will see them in container under <code>/path/on/container</code>, but that's not what I need. I need to populate the volume with contents from container. From what I understand from documents, I need a volume-type mount, not bind-type mount. In this case the <code>-v</code> options forces bind-type</p>
  
  <p>I've tried <code>--mount type=volume,source=/c/full/path,destination=/path/on/container</code> -> This results in this <code>error: docker: Error response from daemon: create /c/full/path: "/c/full/path" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a host directory, use absolute path.</code> The path separator is not allowed...</p>
  
  <p>I've read something about special characters in passwords being an issue and reset my password
  I've read about the /c/full/path needing full access permission, and gave "everyone" full access</p>
  
  <p>Please help</p>