1、什么是容器?
镜像是静态的,镜像运行起来的时候就变成了容器。容器相当于一个完整的操作系统,他可以有自己的文件系统,
自己的网络配置。假如我们使用一个mysql容器进行存储数据,这时数据会存储在当前容器的存储层,存储层的生
命周期和容器一样,容器消亡时,其存储层也不在了,所以我们在使用这种需要存储数据的容器时,往往都需要指
定数据卷Volume(挂载一个宿主机的文件目录),这样即使容器删除,数据也不会消失。
2、容器的安装部署
yum 源配置:
name='rhel7.3'
baseurl=http://172.25.17.250/rhel7.3
gpgcheck=0
[docker]
name='docker'
baseurl=http://172.25.17.250/docker
gpgcheck=0
172.25.17.250:/docker里边的内容
yum 安装docker
yum install docker-ce* 安装docker-engine
yum install docker-ce-cli* 安装docker-client
依赖性yum自己解决
3、启动docker,查看docker信息
systemctl start docker 启动docker引擎
systemctl enable docker 设置开启自启动
docker info 查看docker详细信息
4、容器生成,操作
容器是依赖于镜像的,所以必须先有镜像,镜像可以从docke官网直接拉取,也可以自行下载,然后导入
1、拉取镜像(宿主机要能够上网)
docker pull ubuntu 默认最新版
2、自行下载,然后导入
docker load -i ubuntu.tar 导入镜像
docker load -i nginx.tar 导入
3、查看镜像
docker images
4、生成容器
docker run -it --name vm1 ubuntu vm1即为容器,可交互,因为ubuntu镜像是操作系统
docker run -d -p 80:80 -v /data:/ --name vm2 nginx vm2也是容器,不可交互,后台运行
docker run -it --name vm3 rhel bash 有些交互型镜像的运行容器需要指定shell环境
5、查看容器信息
docker ps -a 查看状态
docker inspect vm1 查看容器详细信息
6、容器操作
非交互型:
docker stop vm2 停止容器,容器还在,只是停止状态
docker start vm2 唤醒容器(非交互型)
docker rm vm2 删除容器
docker rm -f vm2 强制删除容器
docker container prune 删除所有停止的容器
交互型:
ctrl + D 停止容器,退出交互界面
ctrl + p + q 后台运行
docker start vm1 启动vm1
docker container attach vm1 进入交互界面(若停止状态,则先start,再执行这个命令)
docker rm vm1 删除容器
docker rm -f vm1 强制删除容器
docker container prune 删除所有停止的容器