之前一直用WSL2,但是可能我高估了我笔记本的性能,每次开启后我的win11都闪得厉害。

公司给配发的联想昭阳

前两天实在受不了,把它重装了。才发现之前一直很抵触重装,结果重装完工作几乎没怎么受影响...阿噗!

结果很快又要用到数据库了,想着装docker太重了,该咋办呢?简单搜了一下,还是选择了multipass。

安装过程很简单,照着 https://ubuntu.com/blog/replacing-docker-desktop-on-windows-and-mac-with-multipass 里面的过程就行。

重大利好:才发现原来hyper-v管理器可以绕过multipass对虚拟机进行启动和关闭,甚至还能轻松修改分配好的内存和CPU数量等,简直不要太好用

安装Multipass和docker

你可以看上面这篇文章,或者如果英文不行我这里简单翻译一下。或者跳过这一节就行。

创建multipass虚拟机

先到 https://multipass.run/install 点 Windows下载安装程序安装:


安装完打开Powershell,一次性执行下面这一堆命令。这样会创建一个叫docker-vm的虚拟机,如果不想创建,Multipass自己也带了一个叫primary的

@'
groups:
- docker
snap:
commands:
- [install, docker]
runcmd:
- adduser ubuntu docker
'@ | multipass launch --cloud-init - --disk 40G --mem 4G --cpus 4 --name docker-vm

创建的过程中会下载ubuntu,根据你网速,估计要一大会。

使用docker

上面的虚拟机创建好以后就已经安装好docker了。

你可以回头看一下命令里怎么安装的docker

不过现在想使用docker需要进入虚拟机:

点击Open shell会弹出虚拟机的终端窗口。

为了方便,这里要使用一些技巧。先把虚拟机起个别名,执行multipass alias docker-vm:docker

现在我们可以通过multipass docker执行docker命令了,比如

multipass docker run hello-world

这样会在虚拟机下载并启动docker镜像hello-world。

可以把multipass加到环境变量,这样就连Multipass都不用写了:

现在直接执行docker run hello-world就好像真的执行docker命令一样了。

设置固定ip(static IP)

创建虚拟网卡

打开Hyper-V管理器,选择虚拟机管理器



创建交换机



取个名字,选你的无线网卡(有线不知道可以不,应该也行)



设置虚拟机



添加网卡,选择你刚创建的,确定

设置固定IP

打开网卡设置,为其设置IP



如果不知道该写啥,就在命令行通过ipconfig查看目前的IP,写进去

设置虚拟机网络

进入虚拟机命令行,切到/etc/netplan,编辑



增加刚设置的IP同网段的任意IP


现在可以到主机里面把固定ip配到hosts文件里了:)

multipass中docker的使用及固定ip的配置的更多相关文章

  1. 虚拟机中的CentOS 7设置固定IP连接最理想的配置(转载)

    来源:虚拟机中的CentOS 7设置固定IP连接最理想的配置(https://my.oschina.net/panhongju/blog/826814) 转载说明:这是我看了很多篇虚拟机静态IP配置写 ...

  2. docker 设置固定ip、配置网络

    Docker安装后,默认会创建下面三种网络类型 $ docker network ls NETWORK ID NAME DRIVER SCOPE 9781b1f585ae bridge bridge ...

  3. Docker实现容器具有固定IP

    Docker的网络类型 Docker安装后,默认会创建三种网络 $ docker network ls NETWORK ID NAME DRIVER SCOPE 6bdc00ad2a8d bridge ...

  4. 虚拟机中的CentOS 7设置固定IP连接最理想的配置

    说明:在网上搜了好多文章都是大同小异,都没有完全解决我想要的固定IP后要达到的如下效果, 1.笔记本主机IP为设置自动获取,不管什么情况下,不受虚拟机影响,只要连接外网就可以正常上网: 2.只要笔记本 ...

  5. VM中Linux网络设置(固定ip、连接外网开发环境)

      在开发过程中,我们经常需要在linux中进行操作.毕竟服务器的系统大多数都是Linux,所以在dev环境需要配置好一台Linux系统配合开发.   在VMWare Workstation Pro中 ...

  6. docker容器启动设置固定IP

    docker安装以后的网络类型 [root@insure updev]# docker network ls NETWORK ID NAME DRIVER SCOPE 14da40175b01 bri ...

  7. 虚拟机固定IP访问外网配置

    大家都知道虚拟机网络连接有三种模式,桥接,host-only,NAT,不再赘述. 这里说一下桥接模式下,实现主机与虚拟机通讯,虚拟机与虚拟机通信,虚拟机访问外网,废话不多说,直接说解决方案: 1.本地 ...

  8. Hyper-v设置linux固定ip

    一.创建CentOS 7专用的虚拟交换机 打开Hyper-v控制面板,找到右边的“虚拟交换机管理器” 进去后,点击“新建虚拟网络交换机”,填写名称后,选择“内部” 打开网络中心,修改配置如下图,注意i ...

  9. Hyper-V虚拟机配置内部网络固定IP 并且连接外网

    2019/10/23 Hyper-V CentOS7 摘要:Hyper-V中的虚拟机CentOS7能固定IP并且连接外网 保证宿主机的Xshell始终只用同一个IP连接到该虚拟机 新建内部网络虚拟交换 ...

  10. WMvare桥接模式固定IP

    一.命令行固定IP 1.配置网卡IP地址 在命令行输入"vi /etc/sysconfig/network-scripts/ifcfg-eth0"#eth0为第一块网卡,如果是第二 ...

随机推荐

  1. docker-compose 安装 etcd

    目录 docker-compose.yaml docker-compose.yaml version: "3" services: etcd: hostname: etcd ima ...

  2. 04. rails入门学习 创建控制器

    学习视频 https://www.bilibili.com/video/BV1RJ411W7N3?t=49&p=7 一. 启动rails 启动 cd circles/ #到circles的项目 ...

  3. 使用自定义lua解析管理器调用lua脚本中的table

    [5] 使用自定义lua解析管理器调用table 访问数组类型的table CallLuaEntrance测试脚本中内容: //------------------------------------ ...

  4. ssl协议存在弱加密算法修复,禁用低版本的TLS

    验证用网站:https://www.ssleye.com/ssltool/cipher_suites.html https://www.site24x7.com/zhcn/tools/tls-chec ...

  5. MinIo对象存储文件上传,下载,预览,批量上传,创建桶等

    MinIo 操作工具类 MinIo 旧中文文档 MinIo 英文文档 MinIo 官网地址 https://min.io/ package com.ming.utils; import io.mini ...

  6. 2024 FIC取证比赛wp(更新中)

    本次竞赛容器挂载密码为: 2024Fic@杭州Powered~by~HL! 2024年4月,卢某报案至警方,声称自己疑似遭受了"杀猪盘"诈骗,大量钱财被骗走.卢某透露,在与某公司交 ...

  7. vue-i18n 初体验

    vue-i18n 初体验 使用vue,如何国际化呢?采用 vue-i18n.(i18n,internationalization,i和n中间省略18个字符) vue-i18n 官网地址 https:/ ...

  8. WPF插件之 - PropertyChanged.Fody使用详解

    总目录文章目录总目录一.PropertyChanged.Fody是什么?二.PropertyChanged.Fody的安装三.PropertyChanged.Fody的功能1. 特性1 实现属性通知的 ...

  9. ReplayKit 启动录制按钮 RPSystemBroadcastPickerView 的使用

    一.RPSystemBroadcastPickerView 介绍 ReplayKit12自从iOS11公布以来,提供了iOS系统级别的录屏能力(也就是录制自身App以外,手机屏幕内容)的能力,有一个非 ...

  10. nonatomic 带来的线程安全问题

    一.结论 一个对象对外暴露的读写属性,如果这个属性在多个线程中访问,一定会出现crash. 因此对外暴露的属性一定要考虑线程安全问题. 二.看下面的代码 下面的代码一定会crash,除非obj是ato ...