Docker快速学习

Docker快速学习

快速认识Docker

Docker是一个基于Go语言开发的虚拟技术。

  • 镜像(Image):类似于虚拟机中的镜像,是一个包含有文件系统的面向Docker引擎的只读模板。任何应用程序运行都需要环境,而镜像就是用来提供这种运行环境的。例如一个Ubuntu镜像就是一个包含Ubuntu操作系统环境的模板,同理在该镜像上装上Apache软件,就可以称为Apache镜像。
  • 容器(Container):类似于一个轻量级的沙盒,可以将其看作一个极简的Linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序。Docker引擎利用容器来运行、隔离各个应用。容器是镜像创建的应用实例,可以创建、启动、停止、删除容器,各个容器之间是是相互隔离的,互不影响。注意:镜像本身是只读的,容器从镜像启动时,Docker在镜像的上层创建一个可写层,镜像本身不变。
  • 仓库(Repository):类似于代码仓库,这里是镜像仓库,是Docker用来集中存放镜像文件的地方。注意与注册服务器(Registry)的区别:注册服务器是存放仓库的地方,一般会有多个仓库;而仓库是存放镜像的地方,一般每个仓库存放一类镜像,每个镜像利用tag进行区分,比如Ubuntu仓库存放有多个版本(12.04、14.04等)的Ubuntu镜像。

安装Docker

必须认识到Docker与VmWare时不可以共存的,Docker利用了win的Hyper-V技术,开启Hyper-V(Windows10 专业版)安装win for Docker;

https://labs.play-with-docker.com/ Docker在线网站

快速学习

docker search <镜像名称>:在注册服务器中搜索查找镜像是否存在

docker pull <镜像名称>:利用pull命令拉去镜像(tag/版本)

image

docker images:查看当前系统中的镜像

image

docker run -t -i <image>:利用image镜像创建一个容器

docker run -it <container /bin/bash>:启动容器

-i 交互式操作

-t 终端

-d 后台运行

-p 端口映射

docker exec <container_id>:进入容器

docker ps:查看运行中的容器

docker ps -a查看所有容器

docker stop <container_id>:停止容器

docker start <container_id>:开始容器

docker restart <container_id>:重启容器

docker commit <container_id> <用户名/仓库名/tag>:将当前容器创建为镜像

-m 指定说明信息

-a 指定用户信息

docker rm <container_id>:删除容器

DockerFile快速学习

docker build -t="<用户名/仓库名/tag>" <path>

DockerFile理解为一种配置文件

# 指定基于某个镜像
FROM cnetos:latest

# 构件者信息
MAINTAINER mirror

# 在build时执行的操作
RUN yum update
RUN yum install -y git

# copy本地文件到镜像中
COPY ./* /usr/share/gitdir/

原文地址:https://www.cnblogs.com/wangyuyang1016/p/14275645.html