一个计算机技术爱好者与学习者

0%

multipass入门篇

1. multipass是啥?

multipass 是一个轻量虚拟机管理器,是由Ubuntu运营公司Canonical所推出的开源项目。运行环境支持Linux、Windows、macOS,在Linux上使用的是KVM、Window上使用Hyper-V、macOS中使用HyperKit以最小开销运行VM。支持在笔记本模拟小型云。
更多内容参考Multipass官网

2. 安装使用multipass

2.1. 安装multipass

1
brew install multipass

2.2. 创建虚拟机

创建一个ubuntu 18.04虚拟机。

1
2
multipass find
multipass launch -n ubuntu18 -c 1 -m 2G -d 10G 18.04

2.3. 启停虚拟机

1
2
3
multipass list
multipass stop ubuntu18
multipass start ubuntu18

2.4. 删除虚拟机

1
2
multipass delete ubuntu18
multipass purge ubuntu18

2.5. 使用虚拟机

1
2
multipass exec ubuntu18 -- lsb_release -a
multipass shell ubuntu18

3. 配置远程登录

上文安装好的ubuntu18虚拟机,默认是不支持远程登录的,可以按照如下步骤开启。
1、切换到root
sudo su

2、修改sshd配置,开启支持远程登录
vim /etc/ssh/sshd_config,如下修改:

1
2
3
4
Port 22
ListenAddress 0.0.0.0
ListenAddress ::
PasswordAuthentication yes

3、重启sshd
systemctl restart sshd

4、给ubuntu用户设置一个密码
passwd ubuntu

5、登录测试
ssh ubuntu@localhost

以上,远程登录开启完成。

4. 安装使用Docker

4.1. 安装Docker

在虚拟机中,使用snap方式安装docker。

1
2
3
sudo su
snap install docker
docker info

snap方式安装的docker,只在用户目录下拥有读写权限。如果对docker挂载路径有要求,建议使用其他方式安装。

4.2. 安装mysql

1
2
3
4
5
docker run --name vk-mysql -d \
-p 3306:3306 \
-v /opt/data/mysql:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=voidking \
mysql:5.6.50

报错为:
docker: Error response from daemon: error while creating mount source path ‘/opt/data/mysql’: mkdir /opt/data: read-only file system.

这就是刚才说到的问题,snap方式安装的docker,只在用户目录下拥有读写权限。可以改成:

1
2
3
4
5
docker run --name vk-mysql -d \
-p 3306:3306 \
-v /home/work/data/mysql:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=voidking \
mysql:5.6.50

4.3. 登录mysql

mysql -uroot -p
登录报错:
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)

应该是mysql的版本原因,需要指定host ip。

1
2
mysql -h127.0.0.1 -uroot -p
mysql -h192.168.64.3 -P3306 -uroot -p
  • 本文作者: 好好学习的郝
  • 原文链接: https://www.voidking.com/dev-multipass-start/
  • 版权声明: 本文采用 BY-NC-SA 许可协议,转载请注明出处!源站会即时更新知识点并修正错误,欢迎访问~
  • 微信公众号同步更新,欢迎关注~