栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

docker学习笔记

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

docker学习笔记

一、什么是docker技术

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

比如说我创建了一个docker conbainer,我可以在这个conbainer里面搭建我需要的任何环境,当我需要将这个环境整体进行迁移的时候,我就可以将这个conbainer导出快照,然后根据这个快照就可以创建镜像,再根据镜像去创建一个新的conbainer。那么这个新的conbainer就是完全复制了之前的conbainer。实现了非常方便的可移植性,迁移起来非常的方便。 

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

二、docker的架构:

docker由三部分组成:

镜像(images)

Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。

容器(conbainer)

镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

仓库(Repository)

仓库可看成一个代码控制中心,用来保存镜像。

三、docker常用的命令记录

1、获取镜像

docker pull 镜像名

2、创建并启动容器

docker run -itd --name 容器名 镜像名 /bin/bash
-t    终端
-i    交互式的操作
-d    以后台的形式进行启动
-P    将容器内部使用的网络端口随机映射到我们使用的主机上。
--name    为运行的容器起一个名字
/bin/bash    放在镜像名后的是 命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash

3、查看容器

查看所有的容器
docker ps -a

查看在运行的容器
docker ps

4、启动、关闭、重启容器

启动容器
docker start 容器id或者容器名

关闭容器
docker stop 容器id或者容器名

重启容器
docker restart 容器id或者容器名

docker start 和docker run的区别:
docker run 只在第一次运行时使用,将镜像放到容器中,以后再次启动这个容器时,只需要使用命令docker start即可。docker run相当于执行了两步操作:将镜像放入容器中(docker create),然后将容器启动,使之变成运行时容器(docker start)。而docker start的作用是,重新启动已存在的镜像。也就是说,如果使用这个命令,我们必须事先知道这个容器的ID,或者这个容器的名字。

5、进入容器:

docker exec -it 容器名或容器id /bin/bash
-it    交互终端式进入
/bin/bash    执行的命令

6、导入导出容器

导出容器 即为容器创建一个快照并导出
docker export 容器id或名字 > ./快照名.tar

导出容器 即将快照import成镜像保存在镜像仓库
cat ./快照名.tar | docker import - 镜像名:Tag名
此外,也可以通过指定 URL 或者某个目录来导入,例如:
docker import http://example.com/exampleimage.tgz example/imagerepo

注:Tag就是当容器名称一样,可以用Tag来区别不同的镜像,例如mysql-ubuntu:v1  mysql-ubuntu:v2

7、删除容器

docker rm -f 容器id或容器名

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/642229.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号