Windows için Docker Masaüstü'nü motor olarak ve Linux için Docker'ı Windows'taki Ubuntu / Debian'da WSL'de istemci olarak kullanabilirsiniz. Onları TCP ile bağlayın.
Windows için Docker Masaüstü'nü yükleyin: https://hub.docker.com/editions/community/docker-ce-desktop-windows
Linux Konteynerleri yerine Windows Konteynerleri kullanmak istiyorsanız, her iki tür konteyner de Linux liman işçisi istemcisi tarafından yönetilebilir. bash kullanıcı alanı.
17.03.1-ce-win12 (12058) sürümünden bu yana , Linux Docker istemcisinin Windows Docker daemon ile TCP ile iletişim kurmaya devam etmesini sağlamak için TLS'siz Explo daemon'u tcp: // localhost: 2375'de kontrol etmelisiniz
Bu adımları takip et:
cd
wget https://download.docker.com/linux/static/stable/`uname -m`/docker-19.03.1.tgz
tar -xzvf docker-*.tgz
cd docker
./docker -H tcp://0.0.0.0:2375 ps
veya
env DOCKER_HOST=tcp://0.0.0.0:2375 ./docker ps
Kalıcı yapmak için:
mkdir ~/bin
mv ~/docker/docker ~/bin
İlgili değişkenleri .bashrc'ye ekleyin
export DOCKER_HOST=tcp://0.0.0.0:2375
export PATH=$PATH:~/bin
Tabii ki, docker-compose yükleyebilirsiniz
sudo -i
curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
Veya python pip kullanarak
sudo apt-get install python-pip bash-completion
sudo pip install docker-compose
Ve Bash tamamlama. En iyi kısım:
sudo -i
apt-get install bash-completion
curl -L https://raw.githubusercontent.com/docker/docker-ce/master/components/cli/contrib/completion/bash/docker > /etc/bash_completion.d/docker
curl -L https://raw.githubusercontent.com/docker/compose/$(docker-compose version --short)/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
Doper Desktop’ın 2.1.0.1 (37199) sürümünü Hyper-V kullanarak test ettim:
$ docker version
Client: Docker Engine - Community
Version: 19.03.1
API version: 1.40
Go version: go1.12.5
Git commit: 74b1e89e8a
Built: Thu Jul 25 21:17:37 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.1
API version: 1.40 (minimum version 1.12)
Go version: go1.12.5
Git commit: 74b1e89
Built: Thu Jul 25 21:17:52 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.2.6
GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc:
Version: 1.0.0-rc8
GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f
docker-init:
Version: 0.18.0
GitCommit: fec3683
Look both client and server say **OS/Arch: linux/amd64**
Cilt
Cilt eklerken dikkatli olun. Yol , WSL'deki ve docker motorundaki gibi C:\dir
görünecektir . Kalıcı olarak üstesinden gelebilirsin:/mnt/c/dir
/c/dir/
sudo bash -c "echo -e '[automount] \nroot = /'>/etc/wsl.conf"
Wsl.conf dosyasında değişiklik yaptıktan sonra WSL'den çıkıp yeniden yüklemelisiniz, böylece WSL başlatılırken değişikliklerinizi okur.
GÜNCELLEME
from: Windows 10 sürüm 1803'te Komut Satırı için yenilikler
Unix Soketleri
Unix Soketleri Windows'ta desteklenmiyordu ve şimdi onlar! Ayrıca, Windows ve WSL arasındaki Unix soketleri üzerinden de iletişim kurabilirsiniz. Bununla ilgili en güzel şeylerden biri, WSL'nin Windows'ta çalışan Docker Daemon ile etkileşimde bulunmak için Linux Docker İstemcisi'ni çalıştırmasını sağlamaktır.
GÜNCELLEME
Bu senaryo ve Unix Sockets kullanımı, Pengwin'in pengwin kurulumuna dahil edildi .
Saygılarımızla
bash
alanı "sadece" değil . Gerçek, oldukça eksiksiz bir Linux kullanıcı alanıdır, ancak yalnızca X Windows yani metin değildir. "Bash"