Установка Docker Desktop на macOS
Данная статья предназначена для тех, кто искал подробное и понятное руководство о том, как установить Docker Desktop на macOS.
Docker Desktop — это приложение для создания и совместного использования контейнерных приложений и микросервисов.
Переходим по ссылке и нажимаем на кнопку “Download for Mac”.
В данном руководстве рассматривается установка стабильной (Stable) версии Docker Desktop. Если вы хотите установить эксперементальную (Edge) версию Docker Desktop, то необходимо выбрать “Edge” в выпадающем списке.
Переходим в папку “Downloads” и нажимаем на файл Docker.dmg два раза левой кнопкой мыши.
Теперь необходимо переместить приложение Docker в папку Applications.
Переходим в “Applications” и нажимаем на файл Docker.app два раза левой кнопкой мыши.
Далее необходимо подтвердить, что вы доверяете приложению Docker, которое было загруженномо из сети Интернет.
Нажимаем на кнопку “Open”.
На следующем шаге вы увидите предупреждение о том, что приложению Docker Desktop требуются дополнительные права для установки необходимых компонентов.
Нажимаем на кнопку “OK”.
Далее необходимо указать имя пользователя и пароль учетной записи, обладающей правами администратора на вашем компьютере, и нажать на кнопку “Install Helper”.
Установка Docker Desktop успешно завершена.
Нажимаем на кнопку “Skip tutorial”.
Теперь можно запустить первый контейнер.
Сохраняем полученную команду.
Переходим в “Applications”, затем открываем папку “Utilities” и нажимаем на Terminal.app два раза левой кнопкой мыши.
Выполняем ранее полученную команду:
docker run -d -p 80:80 docker/getting-started
Возвращаемся в приложение Docker Desktop.
Контейнер успешно запустился и отображается в приложении Docker Desktop.
Теперь нажимаем на кнопку “Open in Browser”, которая находится справа от запущенного контейнера.
В окне браузера отобразится информация о ранее запущенной команде, которая запустила ваш первый контейнер.
Теперь необходимо войти под учетной записью Docker Hub.
Если у вас еще нет учетной записи на веб-сайте, то зарегистрируйтесь для получения дополнительных возможностей.
Если у вас уже есть учетная запись на веб-сайте, то возвращаемся в приложение Docker Desktop и нажимаем на кнопку “Sign in”, которая находится в правом верхнем углу.
Затем указываем логин и пароль от учетной записи Docker Hub и нажимаем на кнопку “Sign in”.
Install Docker Desktop on Mac
This page contains download URLs, information about system requirements, and instructions on how to install Docker Desktop for Mac.
Docker Desktop terms
Commercial use of Docker Desktop in larger enterprises (more than 250 employees OR more than $10 million USD in annual revenue) requires a paid subscription.
System requirements
Mac with Intel chip Mac with Apple silicon
- A supported version of macOS.
Important Docker supports Docker Desktop on the most recent versions of macOS. That is, the current release of macOS and the previous two releases. As new major versions of macOS are made generally available, Docker stops supporting the oldest version and supports the newest version of macOS (in addition to the previous two releases).
- A supported version of macOS.
Important Docker supports Docker Desktop on the most recent versions of macOS. That is, the current release of macOS and the previous two releases. As new major versions of macOS are made generally available, Docker stops supporting the oldest version and supports the newest version of macOS (in addition to the previous two releases).
Beginning with Docker Desktop 4.3.0, we have removed the hard requirement to install Rosetta 2. There are a few optional command line tools that still require Rosetta 2 when using Darwin/AMD64. See Known issues. However, to get the best experience, we recommend that you install Rosetta 2. To install Rosetta 2 manually from the command line, run the following command:
content_copy
Install and run Docker Desktop on Mac
Install interactively Install from the command line
- Double-click Docker.dmg to open the installer, then drag the Docker icon to the Applications folder.
- Double-click Docker.app in the Applications folder to start Docker.
- The Docker menu displays the Docker Subscription Service Agreement. Here’s a summary of the key points:
- Docker Desktop is free for small businesses (fewer than 250 employees AND less than $10 million in annual revenue), personal use, education, and non-commercial open source projects.
- Otherwise, it requires a paid subscription for professional use.
- Paid subscriptions are also required for government entities.
- Docker Pro, Team, and Business subscriptions include commercial use of Docker Desktop.
- Select Accept to continue. Note that Docker Desktop won’t run if you do not agree to the terms. You can choose to accept the terms at a later date by opening Docker Desktop. For more information, see Docker Desktop Subscription Service Agreement open_in_new . We recommend that you also read the FAQs open_in_new .
- From the installation window, select either:
- Use recommended settings (Requires password). This let’s Docker Desktop automatically set the necessary configuration settings.
- Use advanced settings. You can then set the location of the Docker CLI tools either in the system or user directory, enable the default Docker socket, and enable privileged port mapping. See Settings, for more information and how to set the location of the Docker CLI tools.
- Select Finish. If you have applied any of the above configurations that require a password in step 5, enter your password to confirm your choice.
After downloading Docker.dmg , run the following commands in a terminal to install Docker Desktop in the Applications folder:
content_copy
As macOS typically performs security checks the first time an application is used, the install command can take several minutes to run.
The install command accepts the following flags:
- —accept-license : Accepts the Docker Subscription Service Agreement open_in_new now, rather than requiring it to be accepted when the application is first run.
- —allowed-org= : Requires the user to sign in and be part of the specified Docker Hub organization when running the application
- —user= : Performs the privileged configurations once during installation. This removes the need for the user to grant root privileges on first run. For more information, see Privileged helper permission requirements. To find the username, enter ls /Users in the CLI.
- —admin-settings : Automatically creates an admin-settings.json file which is used by administrators to control certain Docker Desktop settings on client machines within their organization. For more information, see Settings Management.
- It must be used together with the —allowed-org= flag.
- For example: —allowed-org= —admin-settings=’>’
Where to go next
- Get started with Docker provides a general Docker tutorial.
- Explore Docker Desktop and all its features.
- Troubleshooting describes common problems, workarounds, how to run and submit diagnostics, and submit issues.
- FAQs provide answers to frequently asked questions.
- Release notes lists component updates, new features, and improvements associated with Docker Desktop releases.
- Back up and restore data provides instructions on backing up and restoring data related to Docker.
Установка Docker в Mac OS X
Примечание: Docker поддерживается на Mac OS X начиная с версии 10.6 «Snow Leopard».
Движок Docker использует специфические особенности ядра Linux, поэтому вам для того, чтобы запустить его на OS X, потребуется воспользоваться легковесной виртуальной машиной. Вы можете использовать клиентскую программу OS X Docker для управления виртуализированным движком Docker, который будет собирать, запускать и управлять контейнерами Docker.
Чтобы сделать этот процесс проще, мы создали вспомогательное приложение Boot2Docker для установки виртуальной машины (VirtualBox), в которой уже все настроено для запуска демона Docker.
Установка
- Скачайте последнюю версию инсталлятора Docker for OS X (ищите зеленую кнопку Boot2Docker-x.x.x.pkg в нижней части страницы).
- Запустите программу установки, дважды щелкнув по загруженному пакету: будет установлена виртуальная машина VirtualBox, сам Docker и средство управления Boot2Docker.
- Найдите в папке Applications приложение Boot2Docker и запустите его. Либо вы можете инициализировать Boot2Docker из командной строки, выполнив следующие команды:
$ boot2docker init $ boot2docker start $ $(boot2docker shellinit)
Будет открыто терминальное окно и вы увидите запуск виртуальной машины. Как только виртуальная машина будет проинициализирована, вы сможете останавливать и запускать ее с помощью команд boot2docker stop и boot2docker start .
Примечание: Если вы увидите в терминале сообщение, который выглядит примерно так:
To connect the Docker client to the Docker daemon, please set: export DOCKER_HOST=tcp://192.168.59.103:2375
то можно установить переменную среды окружения так, как это указано в инструкции ( set: export DOCKER_HOST=tcp://192.168.59.103:2375 ).
Более подробную информацию смотрите в файле Boot2Docker ReadMe.
Обновления
- Скачайте последнюю версию инсталлятора Docker for OS X
- Если Boot2Docker в данный момент работает, то остановите его с помощью команды boot2docker stop . Затем запустите пакет инсталлятора, который обновит Docker и инструмент управления Boot2Docker.
- Чтобы завершить обновление, вам также потребуется обновить существующую виртуальную машину. Откройте окно терминала и выполните команды:
$ boot2docker stop $ boot2docker download $ boot2docker start
Будет скачан образ .iso, в котором находится новая версия виртуальной машины. Обновление завершено. Вы можете проверить это, выполнив инструкции, которые приведены ниже.
Запуск Docker
Из вашего терминала, вы можете проверить работу Docker при помощи нашего маленького образа-примера hello-world : запустите виртуальную машину ( boot2docker start ), а затем выполните команду:
$ docker run hello-world
В результате будет скачан образ hello-world и будет выдано сообщение Hello from Docker .
Перенаправление порта контейнера
В последней версии boot2docker настраивается сетевой адаптер для связи с хост-системой, с помощью которого обеспечивается доступ к портам контейнера.
Если вы запускаете контейнер с следующим открытым портом:
$ docker run --rm -i -t -p 80:80 nginx
то у вас должна быть возможность получить доступ к этому серверу Nginx по адресу IP, что делается следующим образом:
$ boot2docker ip
Как правило, это адрес 192.168.59.103:2375, но в будущем в конкретной реализации DHCP в Virtualbox он может быть изменен.
Дополнительные подробности
Если вам интересно, то имя пользователя, используемого для boot2docker по умолчанию, — docker , а пароль — tcuser .
Инструментальное средство Boot2Docker для работы с виртуальной машиной и Docker предоставляет следующие команды:
$ ./boot2docker Usage: ./boot2docker []
[] Продолжение описания смотрите в Руководстве пользователя .
На сайте Boot2Docker можно найти дополнительную информацию или сообщить о проблеме.
Начало работы с Docker в Visual Studio для Mac
Visual Studio для Mac планируется выйти на пенсию 31 августа 2024 года в соответствии с современной политикой жизненного цикла Майкрософт. Хотя вы можете продолжать работать с Visual Studio для Mac, есть несколько других вариантов для разработчиков на Mac, таких как предварительная версия нового расширения комплекта разработки C# для VS Code.
В Visual Studio для Mac можно легко компилировать, отлаживать и выполнять контейнерные приложения ASP.NET Core, а также публиковать их в Azure.
Необходимые компоненты
- Docker Desktop
- Visual Studio для Mac 2019
Установка и настройка
Чтобы установить Docker, изучите и выполните рекомендации из статьи об установке Docker Desktop для Mac.
Создание веб-приложения ASP.NET Core и добавление поддержки Docker
- Создайте новое решение, выбрав Файл > Создать решение.
- В разделе приложения .NET Core > выберите шаблон веб-приложения:
- Выберите целевую платформу. В этом примере мы будем использовать .NET Core 2.2:
- Введите сведения о проекте, например имя (DockerDemo в нашем примере). Созданный проект содержит все основные сведения, которые потребуются для сборки и запуска веб-сайта ASP.NET Core.
- В окне решения щелкните правой кнопкой мыши проект DockerDemo и выберите добавить > поддержку Docker:
Visual Studio для Mac автоматически добавит в решение новый проект с именем docker-compose, а затем добавит в существующий проект файл Dockerfile.
Общие сведения о Dockerfile
Dockerfile содержит инструкции по созданию окончательного образа Docker. См. справочник по Dockerfile для получения сведений о других доступных в нем командах.
FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base WORKDIR /app EXPOSE 80 EXPOSE 443 FROM mcr.microsoft.com/dotnet/core/sdk:2.2-stretch AS build WORKDIR /src COPY DockerDemo/DockerDemo.csproj DockerDemo/ RUN dotnet restore "DockerDemo/DockerDemo.csproj" COPY . . WORKDIR "/src/DockerDemo" RUN dotnet build "DockerDemo.csproj" -c Release -o /app/build FROM build AS publish RUN dotnet publish "DockerDemo.csproj" -c Release -o /app/publish FROM base AS final WORKDIR /app COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "DockerDemo.dll"]
Предыдущий Dockerfile основан на образе microsoft/aspnetcore и включает в себя инструкции по изменению базового образа путем сборки проекта и добавления его в контейнер.
По умолчанию файл Dockerfile, созданный в Visual Studio для Mac, открывает порт 80 для HTTP-трафика. Чтобы включить HTTPS-трафик, добавьте Expose 443 в Dockerfile.
Отладка
Настройте проект docker-compose в качестве запускаемого проекта и запустите отладку (Пуск > Начать отладку). Эта команда компилирует, развертывает и запускает проект ASP.NET в контейнере.
Во время первого запуска после установки Docker Desktop может появиться следующая ошибка при попытке отладки: Cannot start service dockerdemo: Mounts denied
Добавьте /usr/local/share/dotnet/sdk/NuGetFallbackFolder на вкладку общего доступа в Docker Desktop:
Когда сборка завершится, приложение откроется в браузере Safari:
Обратите внимание, что контейнер будет прослушивать некоторый порт (например, http://localhost:32768 ) номер которого может быть разным.
Чтобы просмотреть список выполняемых контейнеров, выполните команду docker ps в терминале.
Обратите внимание на ретранслятор портов на следующем снимке экрана (в разделе PORTS (Порты)). Это означает, что контейнер прослушивает порт, который мы ранее открывали в браузере Safari, и передает все запросы на внутренний веб-сервер через порт 80 (как определено в файле Dockerfile). Само приложение считает, что прослушивает порт 80: