我可以用docker在Mac上安装ubuntu吗?

我可以用docker在Mac上安装ubuntu吗?,docker,Docker,我正在使用Mac,但我想学习并使用Ubuntu进行开发,我不在乎GUI。我曾经使用Vagrant和ssh来访问机器,但是它消耗了我机器的大部分资源。我可以将docker用于同样的目的,同时还可以隔离(当我把事情搞砸时)VM吗 是的,你可以 尝试在docker hub中搜索您选择的ubuntu容器(版本和支持图像的用户) 它们中的大多数都有很好的文档记录,说明了用于构建它的内容,以及如何在需要时运行和访问/公开资源 检查这里的官方版本:这是我不使用Docker的少数几个场景之一:) 像这样的基本映

我正在使用Mac,但我想学习并使用Ubuntu进行开发,我不在乎GUI。我曾经使用Vagrant和ssh来访问机器,但是它消耗了我机器的大部分资源。我可以将docker用于同样的目的,同时还可以隔离(当我把事情搞砸时)VM吗

是的,你可以

尝试在docker hub中搜索您选择的ubuntu容器(版本和支持图像的用户)

它们中的大多数都有很好的文档记录,说明了用于构建它的内容,以及如何在需要时运行和访问/公开资源


检查这里的官方版本:

这是我不使用Docker的少数几个场景之一:)

像这样的基本映像是完全精简版的操作系统。最新的Ubuntu图像没有基本工具,如代码> ping <代码>和<代码> CURL< /COD>这是一个从规范到刻意的策略,以最小化图像的大小,从而最小化攻击向量。通常,您会构建一个映像以在容器中运行单个应用程序进程,而不会使用SSH和普通开发工具,因此不需要它们。这会让你很难学习Ubuntu,因为很多核心内容都不存在

在Mac上,我使用过的最好的虚拟机工具是——它能够在不损坏电池的情况下共享CPU。这也很好,对于他们中的任何一个,你都可以从ISO-5GB的磁盘上安装完整的内存,如果你只是四处看看,1GB的内存分配就足够了

使用任何虚拟机监控程序,您都可以暂停虚拟机,使其停止使用资源,并对其进行检查以保存映像,以便稍后恢复到映像。

  • 首先安装
  • 然后在终端窗口中运行:
    docker run-it--name ubuntu:xenial bash
你在ubuntu的终端上,可以做任何你想做的事情

注意:如果您使用的是ubuntu版本bionic(18.04)或更新版本(
ubuntu:bionic
ubuntu:latest
),您可以 必须在容器内运行命令
unnimize
,以便工具 可安装人机交互功能

要在重新启动后重新启动,请执行以下操作:

docker start ubuntu
docker exec -it ubuntu bash
如果要保存更改,请执行以下操作:

docker commit ubuntu
docker images
请参见未命名的图像和:

docker标签myubuntu

然后可以使用新映像运行另一个容器

docker run-it——命名为myubuntu-myubuntu-bash

或者取代前者

docker stop ubuntu
docker rm ubuntu
docker run -it --name ubuntu myubuntu bash

不过,希望这有助于

注意一点:Vagrant和Docker Machine(或Docker for Mac)都运行一个虚拟机(大多数情况下是VirtualBox),该虚拟机会阻塞主机系统的一些资源。根据您扩展虚拟机的方式,您将看到对主机系统性能的影响。如果您只有4GB的RAM,而您给Vagrant或Docker机器3GB的内存,您会注意到这一点。如果您的机器中有16 GB的RAM,您可以更慷慨一些……那么当我在来宾中使用“rm-rf/”时会发生什么呢?:)@HorusCoding rm的行为将与您在VM@nwinkler哦,我的情况不会有任何好处吗?你好@nwinkler,Mac的Docker不再使用Docker机器了。此产品称为Docker工具箱。Docker for Mac使用了一个非常高效的虚拟化解决方案,它与MacOS更好地集成,并且消耗更少的资源,这可能是一个更好的解决方案。。。使用像VirtualBox这样的免费软件来运行Ubuntu可能比运行Docker(Docker然后在引擎盖下使用VM来运行Ubuntu)的开销要小。在VM中运行的Ubuntu服务器将占用512MB的RAM、10GB的磁盘空间,空闲时CPU几乎为零(我使用14.04 LTS)。Docker可能只会减少磁盘使用量。如果你想特别使用ubuntu。。。。而是使用Canonical的多路径。您可能会破坏GUI,但这是值得的!!我试过了,但sudo在这里不起作用。也不添加apt repository您不需要sudo,它使用root用户运行。要获得完整的Ubuntu体验,您需要运行命令“unnimize”