docker结构与常用命令

docker结构:
docker包括三个基本概念:
1. 镜像(image): 相当于一个root文件系统,如ubuntu16.04包含了一套Ubuntu16.04最小系统的root文件系统
2. 容器(container): 镜像和容器的关系,就像面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建,启动,停止,删除,暂停等
3. 仓库(repository): 仓库可看着一个代码控制中心,用来保存镜像
docker使用客户端-服务端(c/s)架构模式,使用远程api来管理和创建docker容器
docker容器通过docker镜像来创建
容器和镜像的关系类似于面向对象编程中的对象和

 

docker命令:

查看docker镜像:

sudo docker images

 删除镜像:

sudo docker rmi 镜像名

 强制删除镜像

docker rmi -f 镜像的id

 

运行docker里面的ubuntu镜像(会创建新的容器): 

sudo docker run -t -i ubuntu:16.04 /bin/bash

-i: 交互式操作
-t: 终端

-d: 默认不会进入容器

ubuntu:16.04:这是指用ubuntu16.04版本镜像文件为基础启动容器
/bin/bash: 放在镜像名后的是命令,这里我们希望有个交互式shell,因此用的是/bin/bash

 

启动容器

sudo docker start 容器id

通过容器id进入该容器的终端

sudo docker exec -it 容器id /bin/bash
或者
sudo docker attach 容器id

停止容器

sudo docker stop 容器id

删除容器:

sudo docker rm -f 容器id

 

如何从宿机或者docker移动文件 

1.获取docker的短id或者名字:

sudo docker ps -a

2.然后根据短id或者名字拿到id全称

sudo docker inspect -f '{{.Id}}' 名字或者短id

3.移动

sudo docker cp 本地文件 长id:路径

 

 创建镜像

1. 用容器作为镜像

sudo docker commit 容器id 新镜像名字(自己取)  

用这个镜像启动一个容器

sudo docker run -it 新镜像的名字 /bin/bash  

自己制作镜像好处:可以在镜像中把软件自己装好,不用每个容器都装一次

 

posted @ 2020-03-14 11:52  xqs42b  阅读(161)  评论(0编辑  收藏  举报