Я закрепил свое кроссплатформенное приложение. Моя идея такова: мой хост-компьютер находится в локальной сети и имеет доступ к общему сетевому ресурсу. Докеризованное приложение считывает список файлов из общего сетевого ресурса:
public void ConfigureServices(IServiceCollection services)
{
try
{
Console.WriteLine("****TEST: GetFiles");
string[] filePaths = Directory.GetFiles(@"\\Share1\FolderMix\");
foreach (var f in filePaths)
{
Console.WriteLine(@"***file: {0}", f);
}
}
catch(Exception x)
{
Console.WriteLine(@"***Exception: {0}", x.Message);
***Exception: Could not find a part of the path '/app/\\Share1\FolderMix'.
}
Я пытался сопоставить сетевой ресурс // vm01 / books20 с томом. Вот мой файл docker -compose с M C docker. Это не может отобразить. Что не так?
version: '3'
services:
midnight-commander:
image: kalaksi/midnight-commander
restart: unless-stopped
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
- SYS_CHROOT
ports:
- 2222:2222/tcp
environment:
MC_SUPPLEMENTARY_GIDS: "12345 12346"
MC_AUTHORIZED_KEYS: |
ssh-rsa AAAA... me@machine
ssh-rsa AAAA... you@machine
volumes:
- midnight-commander:/etc/ssh
- /mnt/my-arbitrary-data-dir:/data
- datanet:/etc/dnet
volumes:
midnight-commander: {}
datanet:
driver: local
driver_opts:
type: cifs
device: //vm01/books20