docker基本操作
一、术语
1.容器
很多用户在接触Docker 之初都会认为容器就是一种轻量级的虚拟机,但实际上,容器和虚拟机有非常大的区别。从根本形态上来看,容器其实就是运行在操作系统上的一个进程,只不过加入了对资源的隔离和限制。
2.镜像
容器是一个动态的概念,而镜像是一个相对静止的概念。简单来说,镜像就是容器中的文件系统。镜像就是由Layered FS 组成的,并且它是只读的。当容器运行时,会在镜像之上再加上一层可读可写层。
3.容器和镜像的关系
容器和镜像是密切相关的,二者缺一不可,也是可以相互进行转换的。通过docker run 即可启动一个容器运行。当需要将容器转化为镜像时,可以通过docker commit 进行转化。
4.安装
https://www.cnblogs.com/yang37/p/14464674.html
二、基本操作
1.拉取远程镜像
docker pull centos:latest
2.查看本地镜像
docker images
3.通过镜像创建容器
docker run --name centosCon1 -i -t -p 5001:22 --restart=always -d centos:latest /bin/bash
docker run 参数:
1. --name --表示容器名称
2. -i -- 以交互模式运行容器,通常与 -t 同时使用
3. -t -- 为容器重新分配一个伪输入终端,通常与 -i 同时使用
4. -d --后台运行
5. -p -- 指定容器暴露的端口
6. --restart=always --容器自动启动
7. 5001:22 -- 表示将宿主机5001端口映射到容器中暴露的22端口
8. centos:latest -- docker images 列表中的 REPOSITORY:TAG
9. /bin/bash --表示使用bash
4.查看容器
docker ps -a
5.提交当前容器为新的镜像或覆盖原镜像
docker commit {容器ID} {镜像名称}
{镜像名称}既可以为新的名称也可以直接覆盖原始镜像
6.登录后台运行的容器
docker exec -it {容器ID} bash
7.已有容器更改为自动重启
docker update --restart=always 容器名
三、补充
1.docker run 会根据镜像创建一个容器,如果没有手动执行 docker rm {容器ID},该容器将会一直存在,你可以启动、停止、登录容器;命令如下:
1.1 启动:docker start {容器名称}
1.2 停止:docker stop {容器名称}
1.3 强制停止:docker kill {容器ID}
2.使用docker commit后,我们刚才配置的带有sshd的容器将生成新镜像或覆盖原始镜像,我们又可以基于它来创建新的容器
....待补充