As far as I can tell, it doesn’t make a huge difference if you’re not trying to put this in a Dockerfile.
However, if you’re using Docker to manage your system and don’t understand it, you should probably learn or go with something such as Hass.io that abstracts it away.
If you have the files on the host already and just want to use them as-is, mount the folder directly. If you don’t want to manage the directory containing those files on the host, use a named volume. If you don’t care, I generally use a named volume just because I don’t want to worry about accidentally deleting the files or something if I had them in e.g.
~ on the host and decide to clean out the directory.
Also, I don’t think it’s technically recommended to copy files directly into the volume’s data directory, although I’ve done it many times (both in and out) with no issues. If you do run into issues, you would need to mount it into another container that provides access to the volume and copy it through that container. Hass.io provides this through add-ons such as Samba, SSH, and the community IDE add-on.