Docker.io dla okien [zamknięte]

Czytałem ładne pytanie na temat Dockera-odpowiedź zawiera przegląd szczegóły implementacji Dockera . Zastanawiałem się, czy coś takiego można zrobić na platformie Windows.

  • Czy istnieją alternatywy Windows dla Dockera?
  • czy teoretycznie możliwe jest użycie innych komponentów (opartych na systemie Windows) do jego zbudowania?

Update1 :

Update2::

Dla informacji jak zainstalować docker w systemie windows (niezwiązany) - official docs zawiera świetne instrukcje jak skonfigurować środowisko za pomocą maszyny wirtualnej boot2docker.

Author: Community, 2013-09-17

9 answers

Docker można uruchomić na maszynie wirtualnej.


Nowa Aktualizacja

Vagrant ma teraz zintegrowaną obsługę Dockera. Może być używany jako dostawca lub jako provisioner. Oto kilka przydatnych linków.

Podgląd Funkcji: Środowiska Programistyczne Oparte Na Dockerze

Vagrant Docs: Docker Provisioner

Vagrant Docs: Docker Provider


Old Update

Jak zauważył seanf w komentarzu poniżej, Vagrant wsparcie zostało wycofane. Zamiast tego wskazują boot2docker :

Boot2docker jest lekką dystrybucją Linuksa opartą na Tiny Core Linux stworzony specjalnie do uruchamiania kontenerów Dockera. Działa całkowicie z pamięci RAM, waży ~24MB i działa w ~5s (YMMV).

Stara ODPOWIEDŹ

Oficjalna dokumentacja Dockera zawiera mały poradnik instalowania Dockera w ramce Vagrant. Vagrant jest świetnym opakowaniem do zarządzania maszynami wirtualnymi. Poradnik jest dla Mac/Linux, ale masz pomysł, aby zrobić to samo w Windows:

Http://docs.docker.io/en/latest/installation/vagrant/

W ten sposób można udostępniać obrazy dokera w wielu systemach z różnymi systemami operacyjnymi.

 22
Author: Alp,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-25 18:10:53

Jeśli szukasz sposobu na wdrożenie wstępnie zapakowanego zestawu aplikacji w jakimś kontenerze dla systemu Windows, z dostępem do rejestru i plików są zwirtualizowane, ale bez użycia pełnego obrazu maszyny wirtualnej, te (komercyjne) aplikacje podobne do piaskownicy mogą być warte obejrzenia:

Edit: jest nowy dzieciak na bloku, Spoon obsługuje kontenery Dla Windows , i faktycznie wygląda bardzo obiecująco.

 8
Author: sschuberth,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-28 15:58:31

Odkryłem, że przynajmniej funkcjonalność związana z systemem plików ma już Windows (7,8). Do obsługi koncepcji "obrazów" w Dockerze można używać plików VHD (dyski wirtualne). Te obrazy są używane dla maszyny wirtualnej, ale mogą być tworzone/dołączane / używane bezpośrednio przez System Windows:

diskpart
DISKPART> create vdisk file=c:\base-image.vhd maximum=200 type=expandable

Nowy obraz może być nakładany na obraz bazowy:

DISKPART> create vdisk file=c:\image-2.vhd parent=c:\base-image.vhd

Zobacz więcej informacji o zarządzanie wirtualnymi dyskami .

[[2]} niestety, proces lekkiej izolacji / sandboxingu jest prawdopodobnie niemożliwe (przynajmniej nie proste), chociaż niektóre metody istnieją ( http://www.sandboxie.com / , natywny klient w Google Chrome ...)
 6
Author: Jiri,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-23 09:14:45

Microsoft pracuje nad własnym kontenerem Hyper-V , który jest podobny do Dockera - Azure obsługuje również infrastrukturę Dockera.

Że pomijając, trudno jest podać precyzyjne alternatywy, ale po stronie Windows mieliśmy App-V przez dość długi czas, który wirtualizuje i piaskownice aplikacji, dzięki czemu mogą być uruchamiane lub przesyłane strumieniowo bez zainstalowania na konkretnym systemie. Nigdy się w to nie mieszałem, ale wydaje się, że może działać jako samodzielny klient bez wszelkie potrzeby skomplikowanej infrastruktury serwerowej zwykle związane z czymkolwiek Microsoft.

Z innej perspektywy format obrazu dysku używany przez System Windows (VHD) obsługuje standardowe różnicowanie, dzięki czemu można łatwo uruchomić wiele maszyn wirtualnych z jednego obrazu systemu operacyjnego tylko do odczytu, gdzie każda maszyna wirtualna ma mały obraz zapisu do obsługi różnic. Są to jednak nadal pełnowymiarowe maszyny wirtualne.

 3
Author: Oskar Duveborn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-29 10:40:50

Obecnie Nie wiem jak zrobić to samo na natywnym Windowsie jak na razie.

Nie sÄ ... dzÄ™, Ĺźe JÄ ... dro windows zostaĹ 'o stworzone do tego typu rzeczy, wiÄ ™ c aby byĹ 'o obsĹ' ugiwane, Microsoft musiaĹ 'by dodaÄ ‡ moĹźliwoĹ" ci do jÄ ... dra windows. Jeśli się mylę, niech ktoś mnie poprawi.

Najczęstszym sposobem, w jaki ludzie robią coś takiego, jest użycie maszyny Wirtualnej w systemie windows, która uruchamia system operacyjny oparty na Linuksie i uruchamia wszystko w nim. Można też zrobić to samo przy użyciu FreeBSD( więzienia) i Solaris( strefy), jeśli to jest bardziej twoja filiżanka herbaty. Ale Docker obecnie nie obsługuje FreeBSD ani Solaris, więc będziesz musiał użyć natywnych narzędzi do nich.

 2
Author: Ken Cochrane,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-17 16:23:26
 2
Author: marengz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-16 22:28:35

Począwszy od czerwca 2016 r.Docker może być uruchamiany na wirtualizacji Hyper-V firmy Microsoft na hostach Windows 10. Jest to teraz preferowany i "oficjalny" sposób uruchamiania Dockera w systemie Windows.

Https://docs.docker.com/engine/installation/windows/

Hyper-V jest Hypervisorem typu 1 , co oznacza, że docker uruchomi jedną warstwę bliżej sprzętu hosta i będzie działał znacznie szybciej niż Boot2docker (który używa VirtualBox, hypervisora typu 2, działającego wewnątrz hosta OS).

Korzyści wydajnościowe dla Dockera mają również minusy: włączenie Hyper-V uniemożliwi funkcje wirtualizacji sprzętu dla hypervisorów typu 2, dlatego istniejące obrazy VirtualBox nie mogą być używane z VTx i warto rozważyć przeniesienie innych zwirtualizowanych systemów operacyjnych Do Hyper - V.

Hosty Windows 7-8.1 nadal mogą używać boot2docker do uruchamiania kontenerów Dockera, ale główny nacisk na rozwój Dockera w systemie Windows JEST" NOWY " Hyper-V-Docker.

 1
Author: Leon Adler,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-26 14:08:31

Hyper-V jest tylko na Windows Pro. Zainstaluj za 110zł.

Lub po prostu zainstaluj Vagrant, zainstaluj VirtualBox, zainstaluj GIT bash, a następnie z terminala Git bash.

git clone [email protected]:danday74/vagrant-docker-skelly.git
cd vagrant-docker-skelly
vagrant up # takes approx 5 mins to create VM
vagrant ssh
docker -v
docker-compose -v

Vagrantfile pokazuje, że:

1-to jest xenial VM z Dockerem i compose zainstalowanym na nim

2-Porty mapowane z hosta do maszyny wirtualnej to 9900-9920

3-Folder udostępniany jest z hosta do maszyny wirtualnej

Dostosuj to zgodnie z życzeniem.

 1
Author: danday74,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-12 21:59:56

Zmęczyłem się walką z wtyczką Maven docker, więc pomyślałem, że będę w stanie ją sfałszować. Oto jak:

Użycie boot2docker i poniższego pliku bat sprawia, że wygląda to tak, jakbyś uruchamiał Dockera natywnie. Umieść go na swojej drodze.

@set SSH="C:\Program Files (x86)\Git\bin\ssh.exe"
@set RUN_REMOTE='docker %*'
@ %SSH% -o IdentitiesOnly=yes -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=quiet -p 2022 -i %HOMEPATH%/.ssh/id_boot2docker -tt docker@localhost %RUN_REMOTE%
Ssh.exe pochodzi z pakietu msys-git, który jest dołączony do boot2docker. Jestem pewien, że to rozwiązanie ma sporo zastrzeżeń, ale działa całkiem dobrze dla mnie. Umieść ten plik na swojej ścieżce i wujka Boba.
 0
Author: Markus T,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-11 14:51:02