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. 洛谷P1941 飞扬的小鸟(背包 dp)

    题意 题目链接 Sol 很显然的dp,设\(f[i][j]\)表示第\(i\)个位置,高度为\(j\)的最小步数 向上转移的时候是完全背包 向下转移判断一下就可以 #include<bits/s ...

  2. input文本框点击第一次光标在最右边

    效果: 样式效果引入bootstrap4.0就OK了. HTML代码: <div class="input-group w-25"> <div class=&qu ...

  3. 16_Queue_利用wait()和notify()编写一个阻塞队列

    [线程间通信概念] 线程是操作系统中独立的个体,但这些个体如果不经过特殊的处理就不能成为一个整体,线程间的通信就成为整体必用方式之一.当线程存在通信指挥,线程间的交互性会更强大,在提高CPU利用率的同 ...

  4. Informatica 9.1.0 Domain地址变化修改

    由于公司机房的变动,infa所连数据库的IP地址变化,致使INFA不能启动.经过查找资料终于解决,现分享给大家,解决方法如下: 1.查看日志路径: Informatica/9.1.0/tomcat/l ...

  5. Azure进阶攻略丨Azure网络通不通,PsPing&PaPing告诉你答案

    很多时候,为了解决一些问题,要查各种文档,很麻烦你造吗!做「伸手党」又容易被鄙视,这时候就需要用到[Azure 进阶攻略]啦!特此,我们推出关于 Azure 常用操作指南的系列文章,每篇涉及一个 Az ...

  6. 微软技术大会直播倒计时7天 | 地球上的IT咖们,正在慢慢向北京聚集

    去年,一句歌词火了:“我在北方的寒夜里,四季如春.”足以见得,北京的冬天,是可以把人冻蒙圈儿的. 然而有一群人,却正在慢慢靠近这样寒冷的北京,7 天后,他们将齐聚在北京. 他们来这里干什么?又是来见谁 ...

  7. Sendip 命令行发包工具,支持IP、TCP、UDP等

    Sendip是一个linux平台的命令行发数据包工具,目前(2018年2月)支持的协议有ipv4.ipv6.icmp.tcp.udp.bgp.rip.ntp,作者表示其他协议将会后面支持,当他有空写的 ...

  8. Oracle 查看session级别信息

    1. 查看活动会话信息[sql] view plain copySELECT *    FROM V$SESSION   WHERE USERNAME IS NOT NULL     AND STAT ...

  9. NodeJs安装less(npm方式)

    上一次讲了如何在浏览器端解析less文件,这次是在cmd中使用npm中的less模块来解析 详解如下 首下我们去下载一个https://nodejs.org/en/,   一路next之后,因为文件不 ...

  10. tensorflow ImportError: libmklml_intel.so: cannot open shared object file: No such file or directory

    通过whl文件安装 tensorflow,显示缺少libmklml_intel.so 需要 1)安装intel MKL库 https://software.intel.com/en-us/articl ...