容器的生命周期:
1 检查本地是否存在指定的镜像,不存在就从公有仓库下载
2 利用镜像创建并启动一个容器
3 分配一个文件系统,并在只读层的镜像层外面挂载一层可读写层
4 从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中去
5 从地址池配置一个ip地址给容器
6 执行用户指定的应用程序
7 执行完毕后容器被终止
容器创建:
docker run [OPTIONS] IMAGE[:TAG] [COMMAND] [ARG...]
当执行docker run时,docker会启动一个进程,同时给这个进程分配其独占的文件系统
-i: 以交互模式运行容器,通常与 -t 同时使用;
-p: 端口映射,格式为:主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
/bin/bash 这是表示载入容器后运行bash ,docker中必须要保持一个进程的运行,要不然整个容器就会退出。(启动容器后启动bash。)
容器启动:
docker start [OPTIONS] CONTAINER [CONTAINER...]
启动一个container
容器进入:
docker exec
进入一个container
容器详细信息:
docker inspect 容器id(网关,环境变量,ip,mac地址,对外端口等等)
停止容器:
docker stop [OPTIONS] CONTAINER [CONTAINER...]
删除容器:
docker rm [OPTIONS] CONTAINER [CONTAINER...]
容器与主机间的数据交互:
容器拷贝文件到主机:
docker cp <containerid>:容器文件位置 主机位置
主机拷贝文件到容器:
用-v挂载主机数据卷到容器内
docker run -v 主机位置:容器位置