systemd-nspawn 运行最轻量的容器
Posted 勇二郎
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了systemd-nspawn 运行最轻量的容器相关的知识,希望对你有一定的参考价值。
# systemd-nspawn 运行最轻量的容器
## 安装
- systemd-container包含所有用于启动和管理容器和虚拟机的工具;
- 而debootstrap则是debian/ubuntu下用于构建一套基本的根文件系统的工具。
```
sudo apt install debootstrap
sudo apt install systemd-container
```
## 创建基本的文件系统
debootstrap生成的根文件系统符合Linux文件系统标准(FHS),包含了/boot、/etc、/bin、/usr等目录。
```
sudo debootstrap --arch=amd64 jessie [自定义一个目录,eg: aaa]
```
中途会下载各种构建基本文件系统要的包
## 最后得到的文件系统的size如下:
```
root@ubuntu: cd aaa
root@ubuntu:aaa# du -sh
295M.
```
## 运行容器
1. systemd-nspawn -D . -M mymachine
- 容器中只有 bash进程
- passwd 给root设置密码
- 由于安全机制,并不能通过 -b方式,由root登入, 需要把/etc/securetty 改个名字才行。
- 按下ctrl+]]]退出这个容器
2. systemd-nspawn -D . -M mymachine -b
- 用-b会导致容器内也启动systemd
接下来,就可以在里面 安装sshd等各种服务了。并可以设置开机(随容器)启动。
设置开机自启动:systemctl enable ssh.service
gentoo:
emerge-webrsync
emerge --search python
emerge -u app-eselect/eselect-python
以上是关于systemd-nspawn 运行最轻量的容器的主要内容,如果未能解决你的问题,请参考以下文章
RancherOS正式版发布:最轻量的开源容器Linux操作系统
通过命令验证docker容器相当一个轻量级的Linux运行环境,且每个容器内都有一个属于自己的文件系统,容器之间相互隔离