常用命令
- 查看镜像
1
docker images
- 拉取镜像
1
docker pull
- 删除镜像
1
docker rmi
创建容器
- 创建交互式容器
1
docker run -it --name=c1 centos7
- exit 可以退出容器终端
- 查看容器信息
1
docker ps -a
- 以守护进程启动nginx
1
docker run -d --name=c2 nginx:1.12\(注释:斜杠换行) -p 8080:80
- 启动已停止的容器
1
docker start 名字
- 进入交互式容器
1
docker exec -it 名字 /bin/bash
- 停止容器
1
docker stop 名字
- 删除容器
1
docker rm 容器名
数据卷
- 本质上是一个目录,共享目录,在创建容器时,同时将目录挂载到了容器中,删除容器不会讲数据卷中的数据删除掉 -i 交互 -t 终端 -d 守护进程
1
docker run -it --name=c1 -v /root/docker/data:/root/docker/data centos:7
数据卷容器
- 启动c1容器并挂载
1
docker run -it --name=c1 -v /volume centos:7
- 启动c2容器并集成c1容器的数据卷挂载关系
1
docker run -it --name=c2 --volumes-from c1 centos:7
- 查看容器的详细信息
1
docker inspect c2
docker部署mysql
- 启动mysql并挂载目录
1
docker run-id --name=test_mysql -p 3306:3306 -v /root/mysql/conf:/etc/mysql/conf.d -v /root/docker/logs:/logs -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=5201314 mysql:5.6
- 进入容器看一下
1
docker exec -it test_mysql /bin/bash
docker部署tomcat
- apache开源的web服务器
1
docker run -id test_tomcat -p 8080:8080 -v &pwd:/usr/local/tomcat/webapps tomcat
docker镜像原理
linux一切都是文件
- 底层 bootloader+kernel=boot file system=bootfs 文件引导系统
- 二层 root file system=rootfs 例如 /etc /sbin /root /dev Linux各种发行版都是基于rootfs
- 容器创建了可读写的rootfs然后调用内核,所以容器小而快