Установка Docker в Ubuntu на Windows 10: не удалось настроить таблицы IP: невозможно включить правило NAT - PullRequest
0 голосов
/ 10 апреля 2020

Я пытаюсь установить Docker в Ubuntu на Windows 10, используя скрипт ниже, но затем я пытаюсь запустить Docker как службу service docker start Docker не запускается, и я нахожу ошибку в docker.журнал. Я использовал ту же инструкцию по установке на простой машине с Ubuntu и без проблем запустил docker.

failed to start daemon: Error initializing network controller: Error creating default "bridge" network: Failed to Setup IP tables: Unable to enable NAT rule:  (iptables failed: iptables --wait -t nat -I POSTROUTING -s 172.18.0.0/16 ! -o docker0 -j MASQUERADE: iptables: Invalid argument. Run `dmesg' for more information.
 (exit status 1))  

Сценарий установки

# Update the apt package list.
sudo apt-get update -y

# Install Docker's package dependencies.
sudo apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common

# Download and add Docker's official public PGP key.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# Verify the fingerprint.
sudo apt-key fingerprint 0EBFCD88

# Add the `stable` channel's Docker upstream repository.
#
# If you want to live on the edge, you can change "stable" below to "test" or
# "nightly". I highly recommend sticking with stable!
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

# Update the apt package list (for the new apt repo).
sudo apt-get update -y

# Install the latest version of Docker CE.
sudo apt-get install -y docker-ce

# Allow your user to access the Docker CLI without needing root access.
sudo usermod -aG docker $USER

Ответы [ 2 ]

0 голосов
/ 30 апреля 2020

Я столкнулся с той же проблемой, и вот что я узнал. В настоящее время невозможно запустить docker в WSL. Обходной путь - Обновите пакет apt с помощью: sudo apt-get update - Установите пакеты, чтобы позволить apt использовать репозиторий через HTTPS с помощью: sudo apt-get install apt-transport-https ca-сертификаты curl software-properties-common - Добавьте ключ GPG docker: curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

  • Установить стабильный репозиторий с помощью: sudo add-apt-repository "deb [arch = amd64] https://download.docker.com/linux/ubuntu $ (lsb_release -cs) stable "

  • Снова обновить пакет apt: обновление sudo apt-get

  • Установить docker DCE: sudo apt-get install docker -ce

  • Затем добавьте эту команду, которая уведомляет docker хоста о связи: echo "export DOCKER_HOST = localhost: 2375" >> ~ / .bash_profile

  • Перезапустите vscode

  • Установите docker рабочий стол и go в свои настройки и установите флажок "Expose daemon tcp: // localhost: 2375". без TLS ".

Благодаря этому я смог запустить docker в WSL (Ubuntu). Надеюсь, что это поможет.

кредит: https://medium.com/@sebagomez / Установка-*- 1049 * -клиент-на-убунту- windows -подсистема-для- linux -612b392a44c4

0 голосов
/ 10 апреля 2020

Запуск Docker в WSL в настоящее время невозможен. Вам нужно будет установить Docker Рабочий стол в Windows. Затем вы можете установить CLI Docker в WSL и использовать docker оттуда

Если вы включили функцию предварительного просмотра WSL2, вы можете установить Docker Рабочий стол в режиме WSL 2 , что даст гораздо лучшую производительность

...