Ubuntu中Docker的常用命令操作

12 篇文章 1 订阅

前置条件:安装docker

概念:

如果说镜像是类,那么容器就是类的实例对象。

这样说,还是有点抽象,没有学过面向对象的同学理解起来还是费劲。

镜像好比是windows 10系统光盘,容器好比是用这个windows 10系统光盘安装的windows 10操作系统(到某个笔记本电脑)。

光盘(镜像)是一个静态概念,它只是记录数据的一块存储介质;只可以用来安装操作系统,不可以进入光盘(镜像)做任务。

安装好的操作系统(容器)是动态概念,可以进入操作系统(容器)完成各种任务,例如可以启动mysql、php或者等服务。

镜像和容器的关系:

用镜像创建容器(相当于用光盘安装操作系统)参考第三章创建容器

用容器保存镜像(相当于用安装好的操作系统刻录一张光盘出来)参考第9章镜像保存

常用命令:

1、加载镜像

$ sudo docker load -i rockchip_sdk.tar

2、查看镜像

$ sudo docker images

 新加载的镜像没有名字,使用tag命令取一个名字。

$ sudo docker tag 4135191fdace rockchip:1.8

再docker images查看,有名字了,即rockchip:1.8,由REPOSITORY和TAG两个字段构成。

有点像人的姓和名。我们只需要把这个镜像的名字记住就能操作它了。

3、创建容器

$ sudo docker run -itd --name=myrockchip rockchip:1.8

 i :表示以交互模式运行容器(让容器的标准输入保持打开)

-d:表示后台运行容器,并返回容器ID

-t:为容器重新分配一个伪输入终端 

--name:为容器指定名称 这里指定容器名称为myrockchip

查看容器

$ sudo docker ps -a

4、进入容器

$ sudo docker exec -it myrockchip /bin/bash

进入后,就相当于进入了一个虚拟机,可以执行里面的操作了。

 容器里面不支持ifconfig命令;支持ps命令。

退出容器用exit命令。

5、删除容器

 sudo docker rm -f myrockchip

最后一个参数也可以是容器id。rm后面加上参数i就可以删除镜像(即rmi -f)。

6、挂载文件夹

$ sudo docker run -itd --name=myrockchip -v ~/work:/home/work rockchip:1.8

-v 宿主机目录:容器目录 

其余参数与创建容器用的相同。

挂载成功后,宿主机和容器就可以对共享目录work进行操作了。

 在容器里的work目录创建一个文件test.txt,退出。宿主机的work目录也有这个文件。

如果容器已经创建了,需要新增加挂载文件夹,按

docker对已经启动的容器添加目录映射(挂载目录)_docker容器增加挂载目录_alwaysonline819的博客-CSDN博客

的方法,即可完成新目录挂载。如果执行后容器消失或者挂载不起作用,多半是json文件改得有问题。

1)systemctl stop docker.socket
             systemctl stop docker
2)修改config.v2.json和hostconfig.json 添加挂载目录
3)systemctl start docker

7、docker中编译工程

从宿主机拷贝一个c++文件(例如test.cpp)到work目录。

尝试编译运行,没有问题!与宿主机中编译完全一样。

8、镜像提交

 sudo docker commit a8dca7deb78d rockchip:1.9

a8dca7deb78d   容器id

rockchip:1.9    镜像名:新标签

9、镜像保存

 sudo docker save -o rockchip.tar rockchip:1.9

   rockchip:1.9  本地刚生成的docker镜像

   rockchip.tar  从  rockchip:1.9导出的tar包

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值