Docker 入坑教程笔记

视频网址B站:点这里

查询命令 man

docker 简单启动和退出

  • docker run --name [容器名] -i -t ubuntu /bin/bash 交互启动虚拟机
  • -t 提供伪tty终端
  • docker ps [-a][-l]
  • docker inspect [container name or id] 配置信息,有用数据
  • docker start [-i] 重新启动停止容器
  • exit 退出

docker 守护式进程启动

启动

  • ctrl + P ctrl + Q 交互式运行

    • ps 不加a可以看到正在运行的容器

docker 查看情况

  • docker run -d 启动一个守护式容器

  • docker logs [容器名] -tf t是显示实践 f是显示日志 --tail 选取一定最后数量日志

  • docker top [容器名] 查看容器中的进程数量

  • docker exec [-d] [-i] [-t] 容器名 [COMMAND] 启动一个容器进程

停止守护式容器

  • docker stop 发出停止信号
  • docker kill 直接停止

容器部署网站所需命令

容器端口映射设置

  • run [-P] [-p] 端口 大写P会全部映射,小写p指定映射
  • docker run -p hostPort:containerPort

本地与远程镜像

docker信息

  • docker info

本地镜像操作

  • docker images

    • REPOSITORY 仓库 和 REGISTRY(存储位置) 不一样
    • TAG REPOSITORY + TAG行成一个完整的镜像
  • docker inspect CONTANINER|IMAGE 查看容器|镜像 的详细信息

  • docker rmi IMAGE 删除镜像 镜像用 完整镜像名 REPOSITORY:TAG

    • 使用id删除可以删除所有相同的镜像

镜像获取和推送

  • 查找镜像

  • 拉取镜像
  • 推送镜像
    • docker push 本地镜像名
    • 需要有相关账户

镜像构建

镜像提交

docker commit container名称 image名称 (仓库/镜像名)
-a 填写作者信息
-m 镜像信息

之后便可以直接用该镜像运行容器

Dockerfile

内容

#First Dockerfile
FROM ubuntu:14.04
MAINTAINNER 容器名 作者信息
命令

构建

docker build [OPTION] PATH | URL | -
-t, --tag=""

Docker C/S模式

Remote API

可以直接访问docker守护式进程

连接方式

unix

tcp

fd

6

Docker File 语法详解

Docker File 构建过程

  • 从基础镜像运行一个指令
  • 执行一条指令,对容器进行修改
  • 执行类似于docker commit的操作,提交一个新的镜像层
  • 再基于刚提交的镜像运行一个新容器
  • 执行Dockerfile 中的下一条指令,直至所有指令执行完毕

docker 并未删除中间层容器,仅仅删除中间层镜像,可以使用run运行中间层镜像

Docker 入坑教程笔记的更多相关文章

  1. Vue入坑教程(二)——项目结构详情介绍

    之前已经介绍了关于Vue的脚手架vue-cli的安装,以及一些文件目录介绍.具体可以查看<vue 入坑教程(一)--搭建vue-cli脚手架> 下面简单说一下具体的文件介绍 (一) pac ...

  2. Vue2.0史上最全入坑教程(下)—— 实战案例

    书接上文 前言:经过前两节的学习,我们已经可以创建一个vue工程了.下面我们将一起来学习制作一个简单的实战案例. 说明:默认我们已经用vue-cli(vue脚手架或称前端自动化构建工具)创建好项目了 ...

  3. 《Asp.Net Core3 + Vue3入坑教程》-Net Core项目搭建与Swagger配置步骤

    简介 <Asp.Net Core3 + Vue3入坑教程> 此教程仅适合新手入门或者前后端分离尝试者.可以根据图文一步一步进操作编码也可以选择直接查看源码.每一篇文章都有对应的源码 教程后 ...

  4. 《Asp.Net Core3 + Vue3入坑教程》 - 6.异常处理与UserFriendlyException

    简介 <Asp.Net Core3 + Vue3入坑教程> 此教程适合新手入门或者前后端分离尝试者.可以根据图文一步一步进操作编码也可以选择直接查看源码.每一篇文章都有对应的源码 目录 & ...

  5. 《Asp.Net Core3 + Vue3入坑教程》 - Vue 1.使用vue-cli创建vue项目

    简介 <Asp.Net Core3 + Vue3入坑教程> 此教程适合新手入门或者前后端分离尝试者.可以根据图文一步一步进操作编码也可以选择直接查看源码.每一篇文章都有对应的源码 目录 & ...

  6. Docker入坑系列(二)

    Docker入坑系列(二) 上一篇我们为Docker创造了一个良好的生活环境,这一篇我们就开始让Docker活起来. 安装Docker ok,原文地址在这里. 当然,我只是自己翻译了一下而已- -跟着 ...

  7. Docker入坑系列(一)

    Docker入坑系列(一) 引用嘛,当然是来引用别人说的东西啦. Docker 是一个开源项目,诞生于 2013 年初,它基于 Google 公司推出的 Go 语言实现. 项目后来加入了 Linux ...

  8. UVM入坑系列笔记(一)

    最近本人在做毕业设计,需要用到UVM搭建验证平台,故在网上查找相关资料,看了一些博客和科普,多少有些收获,记录在这里,以便以后复习查看.以下是本人根据网上学习资料整理的笔记,如果有什么不对的地方欢迎指 ...

  9. Docker入坑指南之RUN

    总有一些场景,我们需要自己制作一个镜像,可以快速还原环境,又不想被其他因素干扰镜像的纯净,这个时候,就可以选择Docker了,启动便捷,镜像还原很快捷,除了上手不容易. 最近入坑研究了一番,小有心得, ...

随机推荐

  1. Scrum之初体验

    一.前言 入职两个月,作为新人,没有参加过一次早晨的scrum会议. 最大的感触就是,有一天中午,带我的开发哥哥突然说产品今天下午提测,我突然就懵了. 这算是我体会的最大的团队中人没有参加scrum, ...

  2. H5新特性监听手机的返回键

    var hiddenProperty ='hidden' in document ? 'hidden' :'webkitHidden' in document ? 'webkitHidden' : ' ...

  3. ASP.NET MVC 音乐商店 - 6. 使用 DataAnnotations 进行模型验证

    在前面的创建专辑与编辑专辑的表单中存在一个问题:我们没有进行任何验证.字段的内容可以不输入,或者在价格的字段中输入一些字符,在执行程序的时候,这些错误会导致数据库保存过程中出现错误,我们将会看到来自数 ...

  4. matlab练习程序(多线段交点)

    很简单的算法,这里是把每对线段都进行比较了. 还有一种似乎先通过x和y排序再进行交点判断的,不过那种方法我还没看太明白. 这里的方法如下: 1.根据线段的端点求两条直线的交点. 2.判断直线的交点是否 ...

  5. PHP 运用rsa加密和解密实例

    1.加密解密的第一步是生成公钥.私钥对,私钥加密的内容能通过公钥解密(反过来亦可以) 下载开源RSA密钥生成工具openssl(通常Linux系统都自带该程序),解压缩至独立的文件夹,进入其中的bin ...

  6. selenium 等待元素加载

    今天,尝试用代码指定自动化测试用例. 将测试record导出为C# 代码后,使用FF的drive ,发现执行一直失败,提示无法加载元素.顿时一种无力感袭来啊.还是硬着头皮找方法.尝试id name x ...

  7. 【C++ Primer】详解C++和C中的float中的有效数字

    在<C++ Primer>第二章中,2.1.1讲到float型的最小尺寸是6位有效数字.这里对“有效数字”的概念产生疑问,故有了以下内容.        首先,float的“尺寸”的意思是 ...

  8. 获取v$latch数据源实验

    实验环境:Oracle Rac 11.2.0.3 首先获取v$latch的定义:通过PL/SQL或者get ddl等常规途径只能获取到v_$latch相关的视图信息.需要通过特殊方法获取v$latch ...

  9. Computer Hardware

    Computer Hardware Para 1 Computer hardware can be divides into four categories: input hardware, stor ...

  10. python核心编程中网络爬虫的例子

    #!/usr/bin/env python import cStringIO # import formatter # from htmllib import HTMLParser # We use ...