前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker快速学习

Docker快速学习

作者头像
Mirror王宇阳
发布2021-01-18 10:18:16
3600
发布2021-01-18 10:18:16
举报

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/版本)

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

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理解为一种配置文件

代码语言:javascript
复制
# 指定基于某个镜像
FROM cnetos:latest

# 构件者信息
MAINTAINER mirror

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

# copy本地文件到镜像中
COPY ./* /usr/share/gitdir/
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-01-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Docker快速学习
    • 快速认识Docker
      • 安装Docker
        • 快速学习
          • DockerFile快速学习
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档