官网地址
概述
场景1:不同语言开发的应用程序部署到同一操作系统上,往往操作系统需要根据相应的语言来配置,如果配置发生冲突就无法完成部署。这时候我们需要对这2个应用进行隔离,使它们运行所依赖的条件互不影响且不依赖于当前操作系统
Docker概述:基于客户端-服务端的体系结构。Docker客户端与Docker守护程序通信(REST API、UNIX套接字或网络接口),发送相关指令给服务端,服务端负责构建、运行和分发Docker 容器的繁重工作。Docker客户端和守护程序可以在同一系统上运行,也可以将Docker客户端连接到远程Docker守护程序
Docker镜像:本质上是我们开发好的通过docker指令封装的应用程序(mysql镜像、自定义应用程序镜像等等),默认存储在DockerHub上
Docker容器:运行镜像后生成的容器实例(简单粗暴的理解为它是一个运行着自定义应用程序的精简版的操作系统)
镜像操作指令
docker build -t <IMAGE_NAME:IMAGE_TAG> <Dockerfile_path>
docker push <IMAGE_NAME>
docker pull <IMAGE_NAME>
docker images
docker rmi <IMAGE_ID>
运行镜像并生成容器
docker run -itd --name <容器名称> -p <宿主机端口>:<容器端口> -v <宿主机目录>:<容器目录> <镜像名称>:<镜像版本号> /bin/bash
-i 以交互模式运行容器,通常与 -t 同时使用
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-d 运行容器到后台,并返回容器ID
-e 设置环境变量
-p 映射容器端口到主机,格式为:宿主机端口:容器端口
-h 设置容器主机名
-v 挂载宿主机目录到容器,格式为:宿主机目录:容器目录
-m:设置容器使用内存最大值
--link 添加连接到另一个容器
--network 连接容器到一个网络
--restart 容器退出后的重启策略,默认 no[always|failure]
--name 容器名称
容器操作指令
docker ps -a
docker start <CONTAINER_ID>
docker stop <CONTAINER_ID>
docker restart <CONTAINER_ID>
docker rm <CONTAINER_ID>
docker exec -it <容器名称> bash
docker export <容器id> > <容器名称>.tar
cat docker/<容器名称>.tar | docker import - test/<容器名称>:<版本号>
修改容器的挂载目录
find / -name '*容器名称*'
cd /var/lib/docker/containers/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)