各种虚拟机技术开启了云计算时代;而 Docker ,作为重组虚拟化技术,正在改变我们开发,测试,部署应用的方式。
然而, Docker 容器 并非 虚拟机。
Docker 守护进程可以直接与主操作系统进行通信,为各个 Docker 容器分配资源;它还可以将容器与主操作系统隔离,各个容器相互隔离。
大家也没有必要完全否定虚拟机技术,因为两者有不同的使用场景。虚拟机更擅长于彻底隔离整个运行环境。
例如,云服务提供商通常采用虚拟机技术隔离不同的用户。而 Docker 通常用于隔离不同的应用,例如前端,从而以及数据库。
▶ 给小伙伴们看一下容器综合概念图
解释一下:
内核 和 bootfs 就是我们真实机器上的 Ubuntu 和 ext4 文件系统; Deiban Base Image 就是我们下载的基础 debian 之上;
添加的emacs图像 , 添加的Apache图片 就是我们的类似的添加 的ssh 软件的 搬运工 镜像; 可写集装箱 就是我们的运行镜像的容器。
▶ 再发一个命令图
左边 图像 是高度,右边 容器 是容器,可以正确体会一下,如果暂时理解不了,也不要着急可以按照下边操作笔记做一下再看看。
▶ 下边是一个 debian 容器应用的笔记,可以初始入门容器技术。
1
查看一下 docker 服务状态
1.1 安装容器
须藤apt-get install docker
1.2 查看服务
bluesky @ developer-RH2485-V2:〜$ /etc/init.d/docker状态
docker启动/运行,进程142084
说明 搬运工 服务已经启动成功了。
2
搜索想要安装的适当 deiban
3
选择一个合适的下载 itscaro / debian-ssh
bluesky @ developer-RH2485-V2:〜$ docker pull itscaro / debian-ssh
最新:从itscaro / debian-ssh中拉出
8aabf8f13bdf:拉出完成
ae4f7e1d7298:拉出完成
ea178834d355:拉出完成
9067a8aac414:拉完整
56402d084950:拉完成
cea61178bb19:拉出完成
c2048084bdba:拉出完成
021924b47315:拉出完成
99e816ca592b:拉完整
摘要:sha256:e3d2e4df06f2d5970874c446cfe2d4aa9dcf5d5363789968b84e3c95e764926b
状态:已下载其carcar / debian-ssh:latest的更新映像
4
查看已经刚才下载的充足
5
启动刚才下载的 debian-ssh 多个和网络登录进服务器
我把下边的目录挂载到 的Debian 容器中的 /根/工作区 目录下,并且开启 的ssh 登录,登录的 主机 主机宿主机 IP 是 IP:192.168.2.149:5022
/ home / diskc / home / bluesky / work / debian_workspace
bluesky @ developer-RH2485-V2:〜$ docker run -it --rm = false -v / home / diskc / home / bluesky / work / debian_workspace:/ root / workspace -p 5022:22 99e816ca592b / bin / bash
root @ bb2aa908b94b:/#
容器开启了
▶ 解释一下:
-v 安装挂载一个卷; -p 导出一个容器中的端口到主机端口 ,这里是容器中的 22 端口导出到主机 5022 端口; 99e816ca592b 要在容器运行的镜像 ID 号。
6
退出容器 CTRL + P CTRL + Q
按住 CTRL + P CTRL + Q 两次组合按键就退出了
▶ 注意: 终端退出了之后容器依然还在运行,可以看一下容器状态
6.1 开启 ssh 服务
docker exec -it bb2aa908b94b / bin / bash
bb2aa908b94b :容器 id
开启容器中 ssh 服务
root @ bb2aa908b94b:/#/etc/init.d/ssh状态
[ 失败 ] sshd没有运行... 失败!
root @ bb2aa908b94b:/#/etc/init.d/ssh开始
[ ok ]启动OpenBSD Secure Shell服务器:sshd。
6.2 设置容器中 root 密码 123456root @ bb2aa908b94b:/#passwd根
输入新的UNIX密码:
重新输入新的UNIX密码:
passwd:密码更新成功
上边红色的那行就是我们刚才运行的容器,现在在 窗口 上可以使用 ssh 工具登录了呀。
6.3 更新容器中 debian 的软件源
root @ bb2aa908b94b:/#apt-get更新
Ign:1 http://deb.debian.org/debian Stretch InRelease
获取:2 http://security.debian.org Stretch / updates InRelease [94.3 kB]
获取:3 http://deb.debian.org/debian Stretch-updates InRelease [91.0 kB]
获取:4 http://security.debian.org Stretch / updates / main amd64软件包[585 kB]
获取:5 http://deb.debian.org/debian Stretch版本[118 kB]
获取:6 http://deb.debian.org/debian Stretch-updates / main amd64软件包[8410 B]
获取:7 http://deb.debian.org/debian Stretch Release.gpg [2434 B]
Get:8 http://deb.debian.org/debian Stretch / main amd64软件包[9488 kB]
在21s(475 kB / s)中获取10.4 MB
正在阅读包装清单...完成
root @ bb2aa908b94b:/#apt-get安装vim
正在阅读包装清单...完成
建立依赖树
正在读取状态信息...完成
将安装以下附加软件包:
vim常见的vim运行时xxd
建议包装:
ctags vim-doc vim脚本
将安装以下新软件包:
vim vim常见的vim运行时xxd
0个已升级,4个新安装,0个要删除和22个未升级。
需要获取6731 kB档案。
完成此操作后,将使用31.1 MB的额外磁盘空间。
你想继续吗? [Y / n] y
6.4 vi 安装完毕后修改 sshd_config
设置允许 root 登录,修改成 PermitRootLogin yes
root @ bb2aa908b94b:/#vim / etc / ssh / sshd_config
root @ bb2aa908b94b:/#/etc/init.d/ssh重新启动
[ ok ]重新启动OpenBSD Secure Shell服务器:sshd。
6.5 查看总计版本
root @ bb2aa908b94b:〜#猫/ etc / issue
Debian GNU / Linux 9 \ n \ l
猫/ etc / os-release
6.6 把新设置的容器保存成新的额外6.6.1 查看正在运行的容器6.6.2 提交新的容器内容到一个新的副本6.6.3 查看刚才提交的预算
现在就可以愉快的在 泊坞窗 中快乐的玩耍了,可以使用 搬运工 容器编译 的Android , linux的 , UBOOT 内核都没有问题,在编译系统之前不要忘了安装编译环境的依赖包 。