用Docker取代VMware虚拟机

简介

Docker属于操作系统层面的虚拟化技术,作为一种新兴的虚拟化方式,Docker跟传统的虚拟化方式相比具有众多的优势,访问网页

https://blog.csdn.net/qq_34936541/article/details/104890251查看使用Docker的优点,是否刚好能在某方面满足自己的工作需求、或者提高自己的工作效率,再决定是否继续往下看完文章。个人体会是:Docker比VMware虚拟机更为轻便、快捷(省硬盘空间、启动快、方便分享开发环境)。

本文重点是第3节如何使用Docker创建arm交叉编译环境,前2节只是把学习遇到的有用信息汇总在一起,未花更多时间去精心总结,仅供参考,遇到问题建议查看文章中给出的原始网址。

A

Docker简介

Docker是一个开源的应用容器引擎,基于Go语言开发。Docker可以让开发者将应用以及依赖包打包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的 app),更重要的是容器性能开销极低。

Docker三个基本概念:镜像(Image)、容器(Container)、仓库(Repository)。Docker使用C/S架构模式,使用远程API来管理和创建Docker容器。Docker 镜像是用于创建 Docker 容器的模板,镜像与容器的关系类似于面向对象编程中的类与对象。仓库可看成一个代码控制中心,用来保存镜像。

Docker实质上是在已经运行的Linux下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的Linux主机。Docker必须部署在Linux内核的系统上,如果其他系统比如Windows想部署 Docker 就必须安装一个虚拟 Linux 环境。

图片

B

Docker使用入门

1、Windows下安装Docker 

https://docs.docker.com/desktop/install/windows-install/

在https://docs.docker.com/desktop/install/windows-install/下载Docker Desktop,此方法仅适用于Windows 10专业版、企业版、教育版和部分家庭版,win7、win8等需要利用docker toolbox来安装。

在https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi下载WSL2。

Windows系统想部署 Docker 就必须安装一个虚拟 Linux 环境。Docker可能提示需要自行下载、安装wsl_update_x64.msi,专业版遇到过,企业版没有。

2、Docker Desktop

使用教程:

https://blog.csdn.net/qq_39611230/article/details/108641842

命令大全:

https://www.runoob.com/docker/docker-command-manual.html

镜像操作:

docker image ls或者docker images //获取当时所有镜像

docker pull Ubuntu //从镜像仓库中拉取或者更新指定镜像

docker run -it --name="test" ubuntu /bin/bash //--name为容器指定一个名称

docker rmi ubuntu //删除一个或多个镜像

容器操作:

docker ps   //查看当前所有正在运行的容器

docker ps –a //-a :显示所有容器,包括未运行的。

docker rm  //删除一个或多个容器

将已有容器制作成镜像:

# 将容器制作成镜像

docker commit 容器名 镜像名

# 镜像打包备份(打包备份的文件会自动存放在当前命令行的路径下,如果想让保存的文件可以打开,可以加.tar后缀)

docker save -o 保存的文件名 镜像名

# 镜像解压

docker load -i 文件路径/备份文件

https://blog.51cto.com/u_16213417/7033463

容器与主机共享文件目录,要写绝对路径,相对路径无效。

docker run -it -v d:/workspace:/workspace tnn-convert

https://blog.csdn.net/u013685264/article/details/123206169

docker容器与主机间的文件复制传输

先查看容器的名称:docker ps -a

 复制容器文件到宿主机:docker cp 31d53f6b5b40:/test.c test.c

复制主机文件到docker容器中根目录:docker cp test.c 31d53f6b5b40:/

C

使用Docker创建arm交叉编译环境

在cmd里执行:

docker pull ubuntu //从镜像仓库中拉取或者更新指定镜像

docker run -it ubuntu //-i: 以交互模式运行容器,-t: 为容器重新分配一个伪输入终端

在容器里执行:

exit //退出当前容器

在cmd里执行:

docker ps -a

 结果如下:

图片

docker start -i 9e878ba7bfd7  //以交互模式运行已关闭的容器

安装gcc等工具链之前先更新系统,在容器里执行:

apt update  //更新Linux系统的包索引或包列表,它不会升级任何软件包。

apt upgrade //将系统上所有过时的软件包升级到最新版本。

apt install gcc

apt install g++

apt install g++-arm-linux-gnueabihf

apt install gcc-arm-linux-gnueabihf

apt install make

在cmd里执行:

docker commit 9e878ba7bfd7 linux //从容器创建一个新镜像

docker save -o linux.tar linux //将指定镜像保存成tar归档文件

docker load -i linux.tar //在其他电脑导入使用docker save命令导出的镜像

微信扫一扫,关注该公众号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值