docker:
针对的是系统级的沙箱环境提供独立的开发环境
安全性: 沙箱环境可以随时关闭,所以不存在感染病毒,使用沙 箱环境起到隔离的作用
docker 是一种新的虚拟化技术
特点:速度快 占用资源少
镜像 images: 封装好的一个docker实例,包含运行应用的依赖 环境,和程序,只读的
容器 container :用来打开,并使用景象,创建了虚拟环境
仓库 registry :用来放镜像
docker 和vm的区别:
vm 在使用时 必须创建独立系统和系统内核
docker 不会创建新的系统内核 使用源系统的内核
操作
1.基本操作
查看版本
docker --version
查看服务状态
systemctl status docker
启动
systemctl start docker
关闭
systemctl stop docker
2.镜像的操作
查看本地镜像
docker images
查看远程仓库的镜像
docker search 包名
拉取镜像
docker pull 镜像名
修改本地镜像的名字
docker tag 原仓库名 新名字
删除镜像
docker image rm 镜像id/镜像名
docker rmi 镜像id/镜像名
3.容器操作
1.创建容器,不启动容器
创建
docker create -it --name=容器名字 镜像id /bin/bash
参数说明:
-i:交互式
-t:容器启动后进入命令行
--name:容器的名字
启动并进入容器
docker start -ai 容器名
参数说明:
-a:将当前的输入 输出连接到容器上面
-i:交互式
退出容器
exit
2.创建容器并启动容器
创建
docker run -dit --name=容器名 镜像id /bin/bash
参数:-d 守护进程,守护容器
进入容器
docker exec -it 容器名 /bin/bash
退出容器
exit
3.其他操作
docker ps/docker container ls :查看正在运行的容器
docker ps -a/docker container ls --all :查看所有的容器
docker container stop 容器id/容器名 :关闭容器
docker container start 容器id/容器名:启动容器
docker container rm 容器id/容器名 : 删除容器(正在运行的容器无法删除)
docker container kill 容器id/容器名:杀死容器
4.docker制作镜像(重点)
1.下载一个纯净版的centos镜像
1)首先查找centos镜像:docker search centos
2)拉取(下载)镜像:docker pull docker.io/centos
2.创建容器并运行容器
docker run -dit --name=centos_py3(容器名) docker.io/centos /bin/bash
3.进入容器并安装python3
docker exec -it centos_py3 /bin/bash
安装python
4.制作镜像
首先退出容器:exit
命令格式:docker commit -m '描述' -a '作者' 容器名 镜像名:标签名
docker commit -m 'centos python3' -a 'dm' centos_py3 centospy3:v1
查看镜像有没有制作成功
5.使用镜像
(1)可以发送给其他人
.打包镜像
注:不指定路径在当前路径下进行创建
docker save -o [路径]/文件.tar 镜像名
docker save -o centospy.tar centospy3
发送
命令格式: scp 要上传的文件 对方的用户@对方的IP地址:上传的位置
scp centospy.tar root@10.10.107.199:/opt
6.使用
下载
docker load < 压缩包路径(创建镜像)
docker load < centospy3.tar
查看镜像是否创建成功
docker images
测试(通过导入的镜像创建一个容器)
1)创建容器
docker run -dit --name=centospy3 镜像id/镜像名 /bin/bash
2)查看容器是否创建成功
docker ps -a
3)进入容器,查看和原来的镜像内容是否相同
docker exec -it centospy3 /bin/bash
ls
(2).上传至远程仓库
1)先要有一个仓库,注册hub.docker.com用户,并创建一个公共仓库
将镜像文件上传到自己的仓库
1.在命令行 登录hub.docker.com
docker login
2.修改要上传的镜像仓库名字
docker tag 旧名字 新名字
新名字格式: 仓库的名/镜像名
3.上传
docker push 改过名字的镜像名:tag
下载自己仓库的镜像
docker pull 仓库名:tag
5.docker 搭建私有仓库
1)要有一个设备为仓库:记住ip
2)如果搭建本地的私有库使用docker官网开源的registry镜像
下载registry镜像
docker pull registry
3)关闭防火墙,安全模式为0
systemctl stop firewalld
setenforce 0
4)创建一个容器
docker run -d -p 主机端口号:容器端口号 -v 主机的路径:/var/lib/registry registry
因为在本地所以客户机要进行http的配置
/etc/sysconfig/docker
保存退出重启服务
上传镜像
镜像名字 主机ip:主机端口号/name