一、Docker架构与主流使用场景
二、镜像与容器
容器是从镜像中创建出来的虚拟实例
三、Linux中安装Docker
先更新yum软件管理器,然后在安装Docker
yum -y update // -y 代表选择程序安装中的yes选项
yum install -y docker
四、管理Docker虚拟机
service docker start // 启动
service docker stop // 关闭
service docker restart // 重启
五、一张图记住Docker管理命令
1、DockerFile
- 定义镜像要安装的程序和配置的环境
- 通过build创建镜像
docker build filename
2、镜像分发到其他主机中的 Docker虚拟机
- 通过push将本地镜像上传到Docker仓库
- 其他主机通过search到仓库查找上传的镜像
- 通过pull将镜像下载到本地
- 另一种:将镜像压缩成文件,其他主机用压缩文件导入镜像即可
3、镜像管理命令
- rmi 删除镜像
- inspect 查看镜像的具体信息
- images 查看Docker虚拟机中所有的镜像
- 导入导出镜像
docker save docker.io/nginx > /home/nginx.tar.gz // 导出镜像
docker load < /home/nginx.tar.gz // 导入镜像
4、容器管理命令
- run 镜像创建容器
- pause/unpause 暂停和恢复容器的运行
- stop/start 停止和恢复容器的运行
- inspect 查看容器的具体信息
- ps -a 查看Docker中所有的容器
- rm 删除容器
- commit 容器保存成镜像
- exit 退出容器命令行(在容器内执行的命令)
- docker exec -it <容器id> bash 用此进入容器,退出时不会导致容器的停止
六、在线安装镜像
查找想安装的相关镜像 如:
docker search nginx
查找到结果后,将镜像的名字复制然后下载安装 如:
docker pull docker.io/nginx
六、创建并启动一个容器
docker run -it --name nginx docker.io/nginx bash
1、参数说明
- [-it] 启动容器后开启一个交互界面
- [--name] 给容器起一个名字(没名字可通过容器的ID管理)
- [nginx] 镜像的名字
- [bash] 启动容器运行命令程序
2、映射
- 端口映射
docker run -it --name myjava -p 9000:8080 -p 9001:8085 docker.io/nginx bash
参数[-p]代表端口映射
意思是分别将容器的[8080][8085]端口映射到宿主机的[9000][9001]端口上
- 文件映射
docker run -it --name nginx -v /home/project:/soft --privileged docker.io/nginx bash
[-v] 是--volume的缩写,是目录映射参数
[:]前的路径是宿主机的路径,后面的则是容器的路径
[--privileged]代表容器在操作映射文件 拥有最高权限
- 组合示例
docker run -it --name nginx -p 80:80 -v /home/nginx/html:/usr/share/nginx/html --privileged docker.io/nginx bash
- 将文件拷贝到docker中
docker cp index.html 容器ID://user/share/nginx/html
3、容器中安装vim
apt-get update // 先更新apt-get
apt-get install vim // 安装vim