Skopiuj plik do woluminu Docker w kontekście platformy Azure
Uruchamiam te polecenia dockera lokalnie, aby skopiować plik na wolumin, działa to dobrze:
docker container create --name temp_container -v temp_vol:/target hello-world
docker cp somefile.txt temp_container:/target/.
Teraz chcę zrobić to samo, ale z woluminami znajdującymi się na platformie Azure. Mam obraz, azureimage
który umieściłem i znajduje się na platformie Azure, i muszę uzyskać dostęp z kontenera do woluminu z plikiem, który mam na dysku lokalnym.
Mogę utworzyć wolumin w kontekście platformy Azure, takim jak:
docker context use azaci
docker volume create test-volume --storage-account mystorageaccount
Ale kiedy próbuję skopiować plik do woluminu wskazanego przez kontener:
docker context use azaci
docker container create --name temp_container2 -v test-volume:/target azureimage
docker cp somefile.txt temp_container2:/target/.
Rozumiem, że polecenia kontenera i kopiowania nie mogą być wykonywane w kontekście Azure:
Polecenie „kontener” nie jest dostępne w bieżącym kontekście (azaci), można użyć kontekstu „domyślnego”, aby uruchomić to polecenie
Polecenie „cp” nie jest dostępne w bieżącym kontekście (azaci), do uruchomienia tego polecenia można użyć kontekstu „domyślnego”
Jak skopiować plik z dysku lokalnego na wolumin w kontekście platformy Azure? Czy muszę najpierw przesłać go na platformę Azure? Czy muszę go skopiować do udziału plików?
Odpowiedzi
Jak wiem, po zamontowaniu udziału plików Azure w ACI należy przesłać pliki do udziału plików, a pliki będą istnieć w zamontowanym wystąpieniu kontenera. Możesz użyć polecenia Azure CLI az storage file uploadlub AzCopy, aby przekazać pliki.
Polecenie docker cp
ma na celu skopiowanie plików / folderów między kontenerem a lokalnym systemem plików. Ale udział plików znajduje się w usłudze Azure Storage, a nie lokalnie. Kontener jest również w usłudze Azure ACI.