标签:删除 文件 tar 后台 备份 仓库 from create 链接
docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖到一个可移植的容器中。
然后发布到任何一个 linux 系统上面。
docker 容器启动和停止都很快,直接在宿主中可以完成。
docker 容器占用的系统资源少,一台宿主可以运行很多容器
docker 操纵方便,简单易学习
docker 可以通过 dockerfile 配置文件自动创建和部署。
docker 容器也是沙箱机制的,相互完全隔离
docker 镜像类似于虚拟机镜像,也可以理解为一个面向 docker 引擎的只读模版。
镜像是创建 docker 容器的基础,镜像可以是一个系统( ubuntu镜像 ),也可以是一个应用程序( mysql 镜像 )。
docker pull name[:tag]
开发者可以通过 docker pull 来获取对应的镜像。
docker images
列出所有的镜像列表。
展示镜像的概要信息,了解当前所有的镜像。
docker inspect imageID
获取某一个镜像的详细信息。
docker search name
在仓库中查询某一个镜像。
docker rmi name
删除某一个镜像。
创建镜像有三种方法:基于已有镜像的容器创建、基于本地模版导入、基于 dockerfile 创建
基础已有镜像容器创建
docker commit [options] containerId [imageName[:tag]]
创建一个容器:
options :a ( 作者名称 )、m( 提交信息 )、p( 创建时候暂停 )
containerId :容器的id
imageName[:tag] : 名称和标签
直接导入模版文件创建镜像
docker import tpl
存储可以将镜像保存为本地文件
载入将本地文件导入为一个本地镜像
docker push name[:tag]
创建本地镜像到仓库中。
docker 容器类似一个轻量级的沙箱,docker 利用容器来隔离和运行应用。
容器是通过镜像创建实例来的,在宿主中可以实现启动、停止、删除等操作,且容器相互隔离不受影响。
docker create name[:tag]
创建了容器但是没有启动它。
可以通过 docker start name 来启动容器
docker run name
相当于:docker create --> docker start
过程:
1、检查是否存在本地镜像,不存在到仓库中获取
2、利用容器创建并启动容器
3、分配一个文件系统,并在只读的镜像层外面挂在一层可读写层
4、从宿主的网桥中桥接一个虚拟接口到容器中
5、从地址池配置一个 IP 地址给容器
6、执行指定到应用程序
7、执行完毕
参数:
t :分配一个伪终端
i :标准的输入
d : 后台运行
docker exec -it containerID /bin/bash
nesnter 工具
需要下载工具,并且链接 docker
docker rm containerID
docker 仓库类似于代码仓库,是 docker 集中存放镜像文件的位置。
docker run -d -p --name -v /container/dir:/local/dir imageName
-v : 创建一个数据卷。
一个宿主目录和容器目录的映射。
docker run-it -v /local/dbdata --name con1 ubuntu
共享数据卷容器
docker run -it --volumes-from con1 --name con2 ubuntu
con1 和 con2 同时共享 /dbdata 目录。
docker run --volumes-from dbdata -v $(pwd):/backup --name worker ubuntu
创建一个容器且挂在到 dbdata 上面,-v 创建数据卷
tar cvf /backup/backup.tar /dbdata
打包数据tar
tar xvf /backup/backup.tar
解压数据
docker run -p 5000:30000 name image
p : 将本地端口映射到容器端口上
dockerfile 是一个文本格式的配置文件,可以快速的创建自定义镜像。
dockerfile 是一行行命令语句组成。
一般分为四个部分:
基本镜像信息、维护者信息、镜像操作者、容器启动指令
1、FROM <image[:tag]>
指定配置的镜像
2、MAINTAINER <name>
作者名称
3、RUN <command>
在 shell 运行命令,即 /bin/bash -c
4、CMD [] <command>
执行命令,只会执行最后一条
5、EXPOSE ports
暴漏执行端口,可外部访问或者 -p 映射
6、ENV <key> <value>
指定环境变量,在配置全局可以使用
7、ADD/COPY <src> <dest>
指定本地的链接到容器目录
8、ENTRYTRYOINT <command>
容器启动后,执行到命令
9、VOLUME ["data"]
创建一个主机或者其他数据卷挂载点
10、USER daemon
指定用户名称
编写完成 dockerfile 文件之后,可以用 docker build 创建镜像。
标签:删除 文件 tar 后台 备份 仓库 from create 链接
原文地址:https://www.cnblogs.com/jiebba/p/10101799.html