在Mac平台上使用Multipass安装Ubuntu虚拟机

起因

最近需要在Ubuntu系统上安装应用进行测试, 无奈手头上只有一台mac电脑, 怎么办呢

如果使用第三方诸如Vmware虚拟机软件是在太费劲了

好在Ubuntu官方给咱建议了一款虚拟机软件Multipass, 相比Vmware更加轻量, 只需一行命令快速创建Ubuntu容器

注意了 Multipass目前只支持创建Ubuntu容器, 但是除了Mac平台外, Multipass还可以在WindowsLinux平台上使用

本文直介绍Mac平台的用法, 其他的可以参考官网

开始使用

1.Multipass安装

首先需要安装Multipass工具

下载地址(访问密码:312306)

如果电脑装了brew可以直接命令行下载安装:

brew cask install multipass

下载安装成功后, 执行以下命令可以查看当前软件版本:

multipass --version

2.创建Ubuntu容器

可以通过以下指令查看可供下载的Ubuntu镜像:

multipass find

下载最新版的Ubuntu镜像并运行:

multipass launch --name ubuntu

命令执行后将自动下载并后台运行

如果你想自定义配置创建可以参考如下方式:

multipass launch -n vm01 -c 4 -m 4G -d 40G
  • -n, --name: 名称
  • -c, --cpus: cpu核心数, 默认: 1
  • -m, --mem: 内存大小, 默认: 1G
  • -d, --disk: 硬盘大小, 默认: 5G

3.操作容器

  1. 进入容器

    # 如果对应实例没有运行的话,会主动运行对应实例
    multipass shell 容器名称
    
image.png

此时便进入到了Ubuntu环境中, 在此可以执行相关的linux指令

如果你不想进入容器直接执行linux指令, 可以使用multipass exec指令, 比如我想在容器中创建一个名为ABC文件夹:

multipass exec 容器名 mkdir ABC
  1. 查看容器信息

    multipass info 容器名
    

    显示结果:

    State:          Running
    IPv4:           192.168.64.2
    Release:        Ubuntu 20.04.3 LTS
    Image hash:     97bb9f79af52 (Ubuntu 20.04 LTS)
    Load:           0.00 0.00 0.00
    Disk usage:     1.3G out of 4.7G
    Memory usage:   136.0M out of 981.3M
    Mounts:         --
    
  2. 主机和容器数据交互

    第一种 使用挂载数据卷的方式:

    multipass mount $HOME 容器名
    
    # 或者指定容器目录
    multipass mount $HOME 容器名:目录名
    

    如果要卸载数据卷:

    multipass umount 容器名
    

    第二种 transfer 进行文件复制传输

    multipass transfer 主机文件 容器名:容器目录
    
  3. 容器配置自动化

    为了保持开发环境和线上环境一致性 同时节省部署时间 multipass给我们提供了--cloud-init选项进行容器启动初始化配置:

    multipass launch --name ubuntu --cloud-init config.yaml 
    

    上面 config.yaml 则是容器的初始化配置文件,内容如下:

    #cloud-config
    
    runcmd:
      - curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
      - sudo apt-get install -y nodejs
    

    runcmd 可以指定容器 首次启动 时运行的命令,上面表示首次启动自动下载安装 Node.js

容器管理

  1. 查看所有创建的容器

    multipass list
    
  2. 启动和停止运行容器

    # 停止ubuntu和ubuntu1
    multipass stop ubuntu ubuntu1
    # 启动ubuntu
    multipass start ubuntu
    
  3. 对 所有容器统一操作

    # 启动所有容器
    multipass start --all
    # 停止所有容器
    multipass stop --all
    # 所有容器放入回收站
    multipass delete --all
    # 彻底删除所有容器
    multipass delete --purge --all
    
    

总结

整体操作来看, 感觉和docker很像, 如果你只需要一个ubuntu系统, 那么选择Multipass还是很方便的, 节省大量的时间

本文为作者原创 转载时请注明出处 谢谢

B站入口

乱码三千 – 点滴积累 ,欢迎来到乱码三千技术博客站

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,542评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,596评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,021评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,682评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,792评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,985评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,107评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,845评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,299评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,612评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,747评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,441评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,072评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,828评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,069评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,545评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,658评论 2 350

推荐阅读更多精彩内容