yum -y install docker centos 安装docker
systemctl start docker 启动docker
docker info 显示有多少个容器,开始的容器,停止的容器
docker pull 拉一个镜像
docker images 显示镜像列表
docker run -it docker.io/centos:latest /bin/bash 运行一个 container并加载镜像centos,运行起来这个实例后,在实例中执行 /bin/bash命令
-d参数后台运行docker
docker logs 容器ID 显示容器日志
docker ps -a #列出所有运行中容器。
docker kill c4a213627f1b #杀死一个容器
docker stop 1a63ddea6571 #关闭容器
docker restart 1a63ddea6571 #重启
docker rm e085da6919af
docker rm -f 1a63ddea6571 #强制删除
删除镜像 :decker rmi 镜像id
sudo docker run -v /home/workspace/dockerdisk:/home/workspace 持久化docker数据
sudo docker commit oldimanageId newdockername
已经运行容器ID,新的docker镜像名
docker images
-v 后跟宿主机要挂载目录的绝对路径和容器内被挂载点的绝对路径,这里我就是将我主机内的/home/cyicz123/Code/DL目录挂载(又称映射)到了容器内/workspace上
docker cp /path/to/local/file my_container_id:/path/in/container 从容器拷贝文件到本地,或从本地拷贝文件到容器
.docker 特性:
文件系统隔离:每个进程容器运行在一个完全独立的根文件系统里。
资源隔离:系统资源,像 CPU 和内存等可以分配到丌同的容器中,使用 cgroup。
网络隔离:每个进程容器运行在自己的网络空间,虚拟接口和 IP 地址。
日志记录:Docker 将会收集和记录每个进程容器的标准流(stdout/stderr/stdin),用于实时检索或批量检索。
变更管理:容器文件系统的变更可以提交到新的镜像中,并可重复使用以创建更多的容器。无需使用模板或手劢配置。
交互式 shell:Docker 可以分配一个虚拟终端并关联到任何容器的标准输入上,例如运行一个一次性交互 shell。
缺点局限性:
1.Docker 用于应用程序时是最有用的,但并丌包含数据。日志,跟踪和数据库等通常应放在 Docker
容器外。 一个容器的镜像通常都徆小,丌适合存大量数据,存储可以通过外部挂载的方式使用。比如使用:
NFS,ipsan,MFS 等, -v 映射磁盘分区
一句话:docker 叧用于计算,存储交给别人。
oracle 不适合使用 docker 来运行,太大了,存储的数据太多