Pengaturan untuk Windows Firewall untuk memungkinkan Docker untuk Windows untuk berbagi drive

139

Windows Firewall memblokir upaya saya untuk memungkinkan Docker untuk Windows berbagi mesin C: di windows 10.

Berfungsi dengan baik ketika Windows Firewall mati. Ketika saya di

Firewall memblokir file Sharing antara Windows dan kontainer. Lihat dokumentasi untuk info lebih lanjut.

Dokumentasi mengatakan

Anda tidak perlu membuka port 445 di jaringan lain mana pun. Secara default, izinkan koneksi ke port 10.0.75.1 445 (host Windows) dari 10.0.75.2 (mesin virtual).

Saya "googled out" untuk mencoba menemukan cara melakukan itu - dapatkah seseorang menyarankan?

Ribeye
sumber
20
Cisco AnyConnect VPN memblokir ini untuk saya, setelah keluar dari VPN, itu berhasil.
Chris Wolf
1
Saya memiliki Cisco yang memblokir saya, tetapi saya HARUS berada di VPN dan juga memiliki Docker yang berbagi ... Ada ide?
Nicolas Irisarri
1
Saya mengikuti ini untuk Norton Firewall dan bekerja dengan sempurna stackoverflow.com/questions/45159006/...
Robin Sanner
Lihat di bawah pos yang menjawab pertanyaan ini superuser.com/questions/1470821/…
Aravind S
1
@NicolasIrisarri: Saya memecahkan masalah yang sama (Perlu menggunakan keduanya pada saat yang sama). Solusinya adalah menggunakan subnet yang berbeda dari yang diamankan oleh AnyConnect. Lihat jawaban saya di bawah ini: stackoverflow.com/a/58406873/9064636
Averell

Jawaban:

151

Anda sebenarnya tidak perlu berbagi drive C tetapi hanya menginstal ulang (atau bahkan berpotensi menghapus centang - klik OK - lalu centang) layanan berbagi File dan Cetak pada kartu jaringan virtual Hyper-V. Lihat artikel ini.

Juga jika ada batasan pada profil jaringan Anda (yaitu publik), pertimbangkan untuk mengubah "jaringan tidak dikenal" default untuk kartu "vEthernet (DockerNAT)" menjadi pribadi melalui perintah PowerShell ini sebelum melakukan hal di atas:

Set-NetConnectionProfile -interfacealias "vEthernet (DockerNAT)" -NetworkCategory Private
David Tesar
sumber
4
Saya harus menutup Docker untuk Windows dan me-restart setelah menjalankan perintah Powershell di atas. Anda dapat menjalankan Get-NetConnectionProfileuntuk memastikan bahwa DockerNATjaringan berada dalam Privatekategori
seangwright
1
Tautan ke blog.olandese.nl/2017/05/03/... memecahkan masalah saya. Terimakasih banyak!
Andrie
1
Tidak satu pun dari ini bekerja untuk saya jadi saya mencoba: stackoverflow.com/a/47837191/1895627
Andrei
3
Saya tidak dapat menghapus itu, saya mendapatkan kesalahan 0x80071779, saya mencoba untuk menonaktifkan -> mengaktifkan. Juga firewall dinonaktifkan ... Saya juga mencoba mengatur ke pribadi, masih tidak berfungsi, ada ide?
BrunoLM
2
deinstall layanan File dan Print sharing:Disable-NetAdapterBinding -Name "vEthernet (DockerNAT)" -ComponentID ms_server
Marcel DB
73

Ok, jadi setelah berjalan dalam masalah yang sama, saya telah menemukan Solusi.

Inilah yang saya lakukan:


Langkah 1: Buka ESET. Kemudian klik Pengaturan

klik pengaturan

Langkah 2: Klik pada perlindungan Jaringan

klik perlindungan jaringan

Langkah 3: Klik pada Pemecahan masalah wizard

klik wizard pemecahan masalah

Langkah 4: Temukan Komunikasi 10.0.75.2 (pengaturan IP buruh pelabuhan default) Cukup periksa apa Kisaran IP didefinisikan di dalam pengaturan buruh pelabuhan Anda. Kemudian cari IP yang berada di kisaran itu.

temukan koneksinya

Langkah 5: Klik pada tombol Buka Blokir , maka Anda akan menerima layar ini.

klik buka blokir

Ini memecahkan masalah untuk saya sendiri.

Anda kemudian dapat pergi ke Aturan dan memeriksa aturan yang telah ditambahkan.


PS: Ini posting pertama saya, maaf untuk prosedur yang salah.

Franche Van Den Berg
sumber
Posting ini sangat berguna bagi saya, karena ketika menambahkan aturan seperti dijelaskan dalam dokumen, alamat IP yang disebutkan berbeda. Pergi bezig!
DelphiLynx
11
Untuk semua pengguna ESET di luar sana, ini solusinya, terima kasih!
cudacoder
2
Kontribusi luar biasa dari Franche Van Den Berg, terima kasih. Ini memang solusi untuk pengguna ESET, dan yang sangat elegan.
Vacilando
Untuk ESET pastikan bahwa jaringan buruh pelabuhan berada di Zona Tepercaya
WhiteKnight
Solusi tepat ini bekerja untuk saya dengan sempurna. Terima kasih!
khalid
63

Hanya solusi ini yang membantu saya:

  • Pergi ke Hyper-V Manager -> Virtual Switch Manager -> DockerNAT -> Jenis Koneksi: ubah dari internal ke pribadi, terapkan, ubah kembali ke internal, terapkan
  • Mulai ulang MobyLinuxVM
  • Mulai ulang Docker
  • Atur profil jaringan Docker ke 'Pribadi'. Jalankan perintah di PowerShell sebagai admin
    Set-NetConnectionProfile -interfacealias "vEthernet (DockerNAT)" -NetworkCategory Private
  • Reset File dan Printer Sharing untuk Microsoft Networks pada koneksi DockerNAT
  • Buka Docker -> Pengaturan -> Drive Bersama dan bagikan C:
kostia24
sumber
6
layak metioning yang Set-NetConnectionProfiledijalankan di PowerShell sebagai admin dan bukan Cmd normal. Ini berfungsi baik untuk saya tetapi adaptor Ethernet masihunidentified network
DarkMukke
3
pemboman karpet FTW. Tidak ada solusi lain yang berfungsi. Terima kasih.
David West
Ini bekerja 100%. Tidak ada opsi lain yang bekerja saat ini dan solusi utamanya adalah mengatur jaringan ke Privat.
Lord
Terima kasih sobat! Kamu menyelamatkan hariku. Itu hanya satu cara untuk memperbaiki bug ini.
TimeCoder
Bekerja untukku. Sebagian besar solusi lain tidak. pastikan Anda mengikuti SEMUA langkah. Saya melewatkan langkah "Tetapkan profil jaringan Docker ke Set 'Netral' -netConnectionProfile -interfacealias" vEthernet (DockerNAT) "-NetworkCategory Private" langkah atas risiko saya sendiri.
Mr Slim
54

Solusi saya adalah memutuskan koneksi dari VPN; itu yang menyebabkan masalah

ianaz
sumber
2
Saya juga memecahkan masalah setelah memutuskan sambungan dari VPN saya, yang tentu saja, saya tidak mencoba sampai melelahkan semua kemungkinan lainnya. sigh
Kirkaiya
Saya sedang mencari setengah hari dan hanya perlu memutuskan sambungan dari VPN .. Terima kasih!
BANTUAN
1
Solusi sederhana..Terima kasih!
MilanYadav
1
Terima kasih! Saya lupa Klien VPN saya yang secara otomatis dimulai saat boot windows.
Fabio Formosa
Terima kasih! Saya mengikuti instruksi berbeda tanpa hasil, tetapi begitu terputus dari VPN, itu berhasil !!!
MeIr
27

Saya tidak menggunakan firewall pihak ketiga mana pun ketika mengalami kesalahan ini. Saya yakin itu adalah masalah Windows Firewall, meskipun menonaktifkan Windows Firewall tidak berhasil untuk saya. Saya akhirnya menemukan posting blog ini setelah banyak penelitian: Docker di windows 10 kesalahan: Firewall memblokir file Sharing ...

Itu akhirnya TIDAK ada hubungannya dengan built in Windows Firewall.

Cara Mengatasinya

  1. Hapus centang Berbagi File dan Printer untuk Jaringan Microsoft dari adaptor jaringan vEthernet (DockerNAT) (Anda dapat menemukan koneksi di Windows Network and Sharing Center ).
  2. Periksa kembali dan pastikan diaktifkan.
Jiminikiz
sumber
Bekerja dengan baik untuk saya, Terima kasih!
LewisCheng-MSFT
Tampaknya ini juga berhasil bagi saya. Saya memeriksa Windows Firewall dan saya sudah memiliki aturan yang benar, mungkin sudah diinstal oleh buruh pelabuhan itu sendiri.
Davide Inglima
Akan menyenangkan untuk mengetahui mengapa ini berhasil dan apa penyebab sebenarnya dari masalah ini. Tampaknya sering terjadi.
Jason Rowe
Masalahnya adalah Anda harus melakukannya lagi setelah sistem dinyalakan ulang
AFD
@AFD, menarik, saya tidak punya masalah itu.
jiminikiz
22

Drive C saya berhenti dibagikan dengan Docker setelah pembaruan Windows 10 baru-baru ini. Saya mendapatkan masalah yang sama dengan mengatakan itu diblokir oleh firewall Windows ketika mencoba membagikannya kembali.

Melihat melalui solusi di atas, saya menemukan sesuatu yang bekerja untuk saya yang lebih sederhana daripada apa pun yang saya lihat di halaman ini. Di Control Panel \ Semua Item Panel Kontrol \ Jaringan dan Pusat Berbagi , pada koneksi vEthernet (DockerNAT) , saya menghapus centang pada File properti dan Printer Sharing untuk Microsoft Networks dan menyimpan pengaturan. Kemudian saya memeriksa kembali properti itu untuk mengaktifkannya kembali dan menyimpannya kembali.

Pada titik ini, saya dapat membagikan ulang drive C dalam pengaturan Docker. Saya tidak tahu mengapa ini berhasil tetapi itu bukan masalah firewall, yang sudah memiliki entri untuk DockerSmbMount.

jrk
sumber
WOW ini adalah bug yang mengecewakan .. Saya mencari sepanjang hari, terima kasih
FAjir
ini hampir berhasil. saya tidak mendapatkan pesan firewall tetapi kotak centang tidak tetap dicentang!
jokab
17

Saya punya masalah dengan Kaspersky; mematikan Kaspersky berfungsi, jadi saya tahu itu firewallnya. Dalam kasus saya, Kaspersky sudah memblokir port 445 karena beberapa alasan. Saya harus pergi ke Aturan Paket untuk Firewall, Layanan Lokal (TCP) dan menghapus 445 dari daftar port blok.

Gambar 1

Gambar 2

Barry Holroyd
sumber
1
Bekerja untukku! Tetapi UI tampak berbeda di Kaspersky ES 10. Dapat ditemukan seperti ini: Tab Pengaturan> Pilih "Firewall" di sebelah kiri> klik tombol "Aturan paket jaringan"> Pilih "Koneksi TCP lokal"> Pilih Edit di atas
Simon B.
1
Alih-alih menghapus 445 dari daftar, ubah 'Aksi' dari 'Diblokir' menjadi 'Dengan Aturan Aplikasi' dan itu berhasil untuk saya. Jadi saya kira menghapus 445 dari 'Layanan Lokal (TCP)' dan membuat aturan baru 'Docker SMB Mount' dengan tindakan 'Dengan Aturan Aplikasi' juga harus berfungsi.
Jimson Kannanthara James
Yang ini berhasil untuk saya. Saya harus menjeda Kaspersky dan kemudian mencoba mengaktifkan drive bersama di Docker untuk Windows.
gdyrrahitis
Terima kasih telah berbagi solusi untuk Kaspersky. Ini berhasil untuk saya.
namit
Saya memiliki masalah yang sama dan mengikuti matthewhorne.me/…
Anthony O.
11

Untuk mesin Windows 10 di jaringan domain, saat membuat adapter Ethernet virtual Hyper-V, itu dikategorikan sebagai jaringan publik. Anda harus mengubahnya ke jaringan pribadi untuk memungkinkan aturan Windows Firewall yang lebih santai, dan karenanya memungkinkan berbagi file.

Jalankan perintah berikut di PowerShell:

Set-NetConnectionProfile -interfacealias "vEthernet (DockerNAT)" -NetworkCategory Private

Ubah nama dalam tanda kutip jika koneksi jaringan virtual Hyper-V mesin Anda disebut sesuatu yang lain.

mzamora
sumber
Bekerja seperti pesona bagi saya. Menjalankan perintah dalam sesi Powershell 6 di Windows 10 v10.0.17763 build 17763, Docker v18.09.2 build 6247962, dan menjalankan Norton Security Suite.
Adam
9

Masalah saya adalah Cisco Anyconnect VPN mengganggu jaringan docker internal

untuk memperbaikinya buka:
Cisco Anyconnect Settings> Preferences> checkAllow local (LAN) access when using VPN

Arash Moosapour
sumber
Ini bekerja untuk saya ketika saran Berbagi File Print tidak. Anyconnect Allow local (LAN) access when using VPNsudah dicentang jadi saya tidak mencentangnya, memutus, memeriksa kembali opsi dan terhubung kembali ke VPN. Docker untuk Windows kemudian menerapkan share drive seperti yang diinginkan.
Aaron
Tidak berfungsi untuk saya, saya harus memutuskan koneksi Cisco AnyConnect untuk berbagi drive. Ada ide?
Jack
Tampaknya para pejuang jaringan perusahaan kami telah mengamankan 0.0.0.0/0, jadi saya kurang beruntung :-(
Jack
8

Sebagaimana dinyatakan dalam satu jawaban lain, Docker tidak bermain bagus dengan VPN. Jika Anda menggunakan Nordvpn, Anda harus menonaktifkan "Gaib pada LAN" dan mungkin "Internet Kill Switch" .

Jika Anda telah melakukannya, itu akan berfungsi bahkan dengan VPN aktif.

Klien NordVPN

Maximilian Ast
sumber
2
Terima kasih! Ini menyelesaikannya untuk saya. Saya macet selama 2 minggu!
user3034
1
Terima kasih banyak! Beberapa jam setelah bermain-main dengan pengaturan jaringan, ini adalah satu-satunya hal yang bekerja untuk saya!
AnotherShruggingPhysicist
6

Itu tergantung pada firewall apa yang telah Anda instal. Dalam kasus saya, saya telah menonaktifkan Firewall Windows bawaan dan saya menggunakan ESET Smart Security sehingga aturan saya terlihat seperti:

  • Buat aturan untuk koneksi IN karena Anda harus mengizinkan Docker untuk terhubung ke host Anda dan mengaturnya ke Allow

masukkan deskripsi gambar di sini

  • Atur port dengan benar seperti yang dijelaskan dalam dokumen yang artinya 445:

masukkan deskripsi gambar di sini

  • Atur alamat IP jarak jauh:

masukkan deskripsi gambar di sini

Mungkin ini bukan jawaban karena tidak terkait dengan Windows Firewall tetapi dapat memberi Anda petunjuk tentang apa yang harus dilakukan.

ReynierPM
sumber
Terima kasih Reynier - Saya mengikuti apa yang Anda tunjukkan sebaik mungkin dalam setara dengan Windows Firewall. - Tab Umum = "Diaktifkan" - Tab Protokol dan Port = Protokol TCP dan port lokal = 445 - Tab Scope = Remote ip = 10.0.75.2 Tetapi mendapat pesan kesalahan yang sama. Diizinkan semua port dan alamat IP - hasil yang sama. Aturan lain yang diutamakan?
Ribeye
Akan lebih baik jika Anda menambahkan beberapa tangkapan layar dari apa yang telah Anda miliki karena saya benci Windows Firewall dan tidak pernah mengatasinya sebelumnya ...
ReynierPM
bagaimana Anda memilih aplikasi "Sistem"?
Küzdi Máté
Tidak perlu menambahkan aplikasi "Sistem" tetapi Anda harus Pastikan bahwa jaringan DockerNAT dipercaya dalam Jaringan yang Dikenal dengan rentang IP 10.0.75.1/24
Miguel Febres
Kami tidak menggunakan ESET: /
Ionel Lupu
4

Tidak satu pun di atas bekerja untuk saya.

Yang akhirnya berhasil adalah membuka properti jaringan "vEthernet (DockerNAT)" dan mencentang kotak "Hyper-V Extensible Virtual Switch" di bagian bawah daftar di bawah tab "Networking".

Tidak yakin apakah ini adalah perbaikan yang sebenarnya atau apakah itu entah bagaimana mereset adaptor jaringan untuk saya ... tetapi berhasil!

Samuel Neugber
sumber
4

Sepertinya banyak yang mengalami masalah ini ketika menjalankan Cisco AnyConnect. Saya mendapat masalah yang sama dan inilah cara saya memecahkan:

Penyebabnya: Subnet yang digunakan oleh Docker ada dalam daftar Rute Terjamin dikelola oleh Cisco AnyConnect (saya yakin daftar ini dikelola oleh admin VPN Anda).

Solusinya: Ubah subnet yang digunakan oleh Docker untuk tidak tumpang tindih dengan daftar yang dikelola oleh AnyConnect.

Misalnya, dalam kasus saya, saya berubah dari 10.0.75.0 (yang tumpang tindih dengan 10.0.0.0/8) menjadi 172.31.0.0/28. masukkan deskripsi gambar di sini

Averell
sumber
3

Saya memiliki masalah yang sama dan mencoba semua perbaikan - dan ternyata lebih dari satu diperlukan:

  • Tambahkan aturan firewall (Norton Security untuk saya)
  • Jadikan jaringan pribadi
  • Bagikan drive

Saya telah menulis penjelasan lengkap di http://kajabity.com/2017/08/unblock-docker-for-windows-firewall-issues-with-host-volumes/

Simon Williams
sumber
1
“Meskipun tautan ini dapat menjawab pertanyaan, lebih baik untuk memasukkan bagian-bagian penting dari jawaban di sini dan memberikan tautan untuk referensi. Jawaban hanya tautan dapat menjadi tidak valid jika halaman tertaut berubah. "
McGrady
Kunci di sini untuk saya adalah membuat jaringan buruh pelabuhan pribadi.
Mike Caron
3

Drive G saya berhenti dibagikan dengan Docker setelah pembaruan Windows 10 baru-baru ini. Saya mendapatkan masalah yang sama dengan mengatakan itu diblokir oleh firewall Windows ketika mencoba membagikannya kembali.

Lalu saya telah mencoba untuk menyelesaikan masalah ini dengan beberapa saran tetapi saya tidak dapat menyelesaikan masalah itu setelah itu saya telah mencoba untuk me-reset kredensial di bawah Shared Drives dan masalah saya terpecahkan.

Jadi Jika Anda mau maka Anda bisa mencoba melakukan ini-

masukkan deskripsi gambar di sini

rowmoin
sumber
3

Semua yang diposkan semua orang TIDAK BEKERJA untuk saya.

APAKAH INI.

Saya menginstal rilis EDGE. Saya kemudian pergi ke WINDOWS DEFENDER dan menonaktifkan firewall untuk DOCKER NAT. (bukan adaptor ethernet saya yang sebenarnya, hanya buruh pelabuhan nat)

Setelah saya menonaktifkan windows defender / firewall cara itu bekerja dengan baik.

ya sangat berharap itu membantu sebagian dari Anda!

Dahlia Hitam
sumber
menonaktifkan firewall untuk koneksi tertentu (dockerNat). Terima kasih banyak!
Mafu
Tolong jelaskan bagaimana tepatnya Anda menonaktifkan firewall Windows Defender untuk adaptor / koneksi jaringan tertentu?
gagak vulcan
3

Dalam kasus saya, saya menonaktifkan "Blok TCP 445" pada Firewall Windows Defender dengan Keamanan Tingkat Lanjut dan itu berhasil. Kemudian diaktifkan kembali setelah pengaturan drive bersama di Docker.

pengaturan Blok TCP 445

pengaturan drive Bersama

khanhkid
sumber
Saya baru menyadari bahwa saya pribadi menambahkan aturan firewall ini kembali ketika alat peretas NSA bocor. Terima kasih!
Danny Z
2

Saya memiliki masalah yang sama dengan F-secure, DeepGuard memblokir layanan Docker. Solusi saya adalah:

Buka klien F-secure dan klik " Tugas "

masukkan deskripsi gambar di sini

Pilih " Izinkan program untuk memulai "

masukkan deskripsi gambar di sini

Pilih dari daftar "com.docker.service" dan tekan " Hapus "

masukkan deskripsi gambar di sini

Setelah itu restart klien Docker dan mencoba mengajukan permohonan untuk berbagi file.

Juga panduan pemecahan masalah yang sangat baik di sini: Kesalahan: Firewall memblokir berbagi file antara Windows dan kontainer

ponkape
sumber
2

Saya memiliki masalah yang sama dengan firewall yang tidak memungkinkan saya untuk berbagi drive C saya. Saya mencoba semua solusi yang tercantum di atas dan tidak ada yang berhasil untuk saya. Kemudian saya mencopot buruh pelabuhan sepenuhnya dari mesin saya. Control Panel\Programs\Programs and Features -> select Docker for Windows -> Uninstall
Lalu pergi ke situs buruh pelabuhan dan klikGet Docker for Windows (Stable)
Setelah itu saya bisa berbagi drive C

Andrei
sumber
1
Saya telah benar-benar mencoba yang lain, hanya solusi ini yang bekerja untuk saya. Terima kasih sobat!
Charis Moutafidis
2

Untuk AVG Internet Security, mengaktifkan Mode Berbagi Koneksi Internet di bawah pengaturan Firewall melakukan trik untuk saya.

masukkan deskripsi gambar di sini

Sohail
sumber
2

Bahkan setelah memastikan bahwa aturan firewall masuk diatur dengan benar dan bahkan setelah mencopot dan menginstal ulang Layanan Berbagi File dan Pencetakan, itu tidak berfungsi untuk saya.

Solusi: selain itu saya juga harus melakukan hal ketiga. Saya harus menonaktifkan kotak centang. Mencegah koneksi masuk ketika berada di jaringan publik dalam pengaturan firewall khusus untuk jaringan publik. Setelah melakukan itu mulai bekerja untuk saya juga. Lihat tangkapan layar yang dilampirkan di akhir pesan ini.

Tidak tahu sudah berapa lama opsi ini ada di sana. Saat ini saya sedang mengerjakan Win 10 Pro 1709 16299.402.


1. Buka pengaturan firewall khusus untuk jaringan publik Buka pengaturan firewall khusus untuk jaringan publik

2. Hapus centang pada kotak ini Hapus centang pada kotak ini

baumgarb
sumber
2

Menggunakan Kaspersky Internet Security Anda dapat menyelesaikan ini dengan mudah jika Anda mengubah vEthernet (DockerNAT)jenis adaptor jaringan menjadi Trusted network.

Pengaturan> Perlindungan> Firewall> Jaringan> vEthernet (DockerNAT)> Pilih "Jaringan Tepercaya"

masukkan deskripsi gambar di sini masukkan deskripsi gambar di sini masukkan deskripsi gambar di sini masukkan deskripsi gambar di sini

xxxbence
sumber
2

25 Jan 2020

Tampaknya, ini adalah masalah di versi lama, saya menginstal versi terakhir:

Docker version 19.03.5, build 633a0ea

dan itu bekerja untuk saya tanpa konfigurasi.

masukkan deskripsi gambar di sini

YCF_L
sumber
1

Ini (tautan di bawah) tampaknya merupakan perbaikan terbaik yang saya temukan sejauh ini. Ini tahan di seluruh reboot. Yang terbaik dijelaskan di sini: https://gist.github.com/biggyspender/8b5b2ed9ff63de31045d41304e3915b3

Antarmuka jaringan vEthernet tampaknya dibuat secara dinamis setiap kali sistem dimulai, dan dibuat di grup 'Publik' sebagai lawan dari grup 'Pribadi' (tempat kerjanya). Pengeditan di salah satu skrip startup Docker (dipanggil di tautan di atas) mengotomatiskan perintah / perbaikan powershell yang dicatat oleh David Tesar di atas ....

Saya lebih beruntung menambahkan fungsi ke skrip daripada mengedit skrip dan mengubah 'Internal' menjadi 'Private'.

Paul Olson
sumber
1

Jika bukan yang di atas berfungsi, pastikan Anda tidak terhubung ke VPN . Itulah yang terjadi pada saya, saya terhubung ke VPN menggunakan klien Cisco AnyConnect, juga pastikan Anda mengatur DNS statis dalam pengaturan buruh pelabuhan.

Kelvin Confesor
sumber
Jika Anda membutuhkan keduanya (VPN AnyConnect dan Docker), lihat komentar saya stackoverflow.com/a/58406873/9064636
Averell
1

Saya mencoba semua yang tercantum di sini dan di https://github.com/docker/for-win/issues/360

Tidak ada yang berhasil untuk saya.

Saya menjalankan lingkungan dev saya di wadah buruh pelabuhan, dan saat di VPN Perusahaan (Cisco AnyConnect), saya perlu memasang drive lokal saya pada wadah untuk mengakses file proyek saya.

Berikut ini adalah buruh pelabuhan yang bekerja untuk saya. Tambahkan --publish 8000:8000ke perintah run docker yang ada.

Begitu

docker run -v C:/Users/kumar.joshi/KumarData:/mnt --name dev <image:latest>

akan menjadi

docker run -v C:/Users/kumar.joshi/KumarData:/mnt --name dev --publish 8000:8000 <image:latest>

Pastikan port tidak digunakan lagi Anda akan mendapatkan kesalahan ini:

Gagal untuk 0.0.0.0:8000 gagal: port sudah dialokasikan

Kumar Joshi
sumber
1

Singkatnya, gunakan versi Edge.

Versi Edge Docker untuk Windows sejak 2.1.5.0 (2019-11-04) memiliki implementasi baru berbagi file tanpa memerlukan modifikasi firewall https://docs.docker.com/docker-for-windows/edge-release-notes /

"Implementasi berbagi file baru: Docker Desktop memperkenalkan implementasi berbagi file baru yang menggunakan soket gRPC, FUSE, dan Hypervisor alih-alih jaringan Samba, CIFS, dan Hyper-V. Implementasi baru ini menawarkan peningkatan kinerja I / O. Selain itu, saat menggunakan sistem file baru:

Users don’t have to expose the Samba port, and therefore do not experience issues related to IT firewall or the drive-sharing policy.
There is no need to provide user credentials to Docker Desktop. File access rights are automatically enforced when accessing mounted folders through containers.

"

Anda dapat mengunduh versi tepinya: https://download.docker.com/win/edge/Docker%20Desktop%20Installer.exe

Catatan seperti sekarang, versi tepi 2.1.7.0 akan digunakan untuk rilis stabil berikutnya: "Catatan: Docker Desktop Edge 2.1.7.0 adalah kandidat rilis untuk rilis Stabil utama mendatang.". Jadi risiko menggunakan Edge relatif rendah. Atau Anda bisa menunggu rilis stabil berikutnya, untuk menghindari semua masalah firewall ini.

BZ
sumber
0

Saya menemukannya cukup mudah. Pergi saja ke koneksi jaringan Anda. Anda dapat pergi ke Panel Kontrol / Jaringan dan Berbagi. Anda akan menemukan berbagai koneksi. Cari koneksi Docker. Pilih mana yang default. Setelah memilih jaringan, pergi ke Properties. Di bagian properti aktifkan opsi Hyper-V Extensible Virtual Switch . Ini akan membantu wadah virtual untuk menggunakan kartu jaringan.

Ankush K
sumber
0

Apa yang terjadi pada saya (setelah beberapa jam coba-coba) mengubah Subnet Mask dari 255.255.255.240menjadi 255.255.255.0(yang seharusnya tidak mengubah apa pun).

Sebagai bagian dari percobaan-n-kesalahan, saya telah melakukan semua yang lain yang tercantum pada artikel, tetapi tanpa hasil .. tetapi langkah terakhir ini melakukannya .. dan kembali ke 255.255.255.240tidak merusak siklus yang baik.

Saya akui, itu tidak masuk akal .. tetapi mungkin terkait dengan keadaan internal yang hanya dipicu oleh perubahan jaringan.

Lagi pula, jika saya telah membantu hanya satu, maka itu sepadan dengan usaha.

Docker Desktop edge, 2.0.4.1 (34207)
gimlichael
sumber