docker优势

轻量级、资源损耗少、启动快、性能高、只能运行linux系统

容器技术发展历程

1.chroot技术

新建一个子系统(拥有自己完整的系统文件)

ldd /bin/ls(查看ls命令依赖的库文件)

2.linux容器(lxc)-linux container

namespaces命名空间、隔离环境、cgroup进程资源限制

3.docker容器

初期使用lxc二次开发,后期使用libcontainer

docker加速器 #使用阿里加速更靠谱

vim /etc/docker/daemon.json
{"registry-mirrors":["https://registry.docker-cn.com"]}
docker info 检查加速

镜像管理

docker search -搜索镜像
docker pull -拉镜像,默认最新版latest
docker image ls -镜像列表
docker image save -镜像导出
docker image load -镜像导入
docker image rm -镜像删除

容器管理

run-创建并启动
start-启动
-d 后台运行
-p 指定端口映射
-P 系统自动指定端口映射
-it 分配交互式终端
--name 指定容器名称
ctrl+d 退出容器
-v 源地址(宿主机):目标地址(容器)
-e 环境变量
docker container ls    查看启动容器
docker container ls -a 查看所有容器
docker container start/restart/stop/kill/rm/rename 启动/停止/杀死/删除/重命名 容器

进入正在运行的容器

docker container attach 进入容器同一个终端,画面同步
docker container exec -it name /bin/bash 使用exec分配tty进入容器
/bin/bash 覆盖容器初始命令
ctrl+p,ctrl+q悄悄退出

容器网络

默认容器网络-nat模式,172网段

-p 80:80
-p 514:514/udp 指定udp协议,默认tcp协议

容器数据持久化

docker container cp 宿主机目录 容器名:目录 -复制宿主机目录
docker cp /data/docker/test01/ docker-centos01:/ttt
docker run -d -v 源地址(宿主机):目标地址(容器) 容器名 -挂载主机目录,之后直接修改宿主机目录内容便可
数据卷管理
docker run -d -v 卷名:目标地址(容器) 容器名 -数据卷(第一次卷空,将容器数据拷贝至卷;若卷有数据则卷数据挂载到容器)
docker volume inspect 卷名
--volume-from 跟某一个已经存在的容器挂载相同的卷
docker run -itd -v tes:/opt/ centos /bin/bash
docker run -itd -v /data/docker/test/:/opt/ centos /bin/bash

手动制作镜像

docker run -it -p 81:80 centos /bin/bash
yum install nginx -y
nginx
ctrl+d
docker container commit nifty_lamarr centos8-nginx01
docker image ls
docker run -itd -p 81:80 centos8-nginx01 /bin/bash

自动制作镜像dockerfile

基础镜像信息            FROM
制作镜像操作指令 RUN
容器启动时执行初始命令 CMD [" "]
docker image build -t 镜像名称 --network=host dockerfile路径

root账户登录

docker exec --user root -it mongo /bin/bash

自动重启

--restart unless-stopped \

时间一致

-v /etc/localtime:/etc/localtime:ro

日志

docker logs ID -f

docker学习-qiang的更多相关文章

  1. Docker学习总结

    本文作为总结性文章,不会详细讲解Docker.但会把已学习的.了解的内容按照由易到难的顺序串起来,更多的是帮助Docker新手快速的了解Docker,知道目前处在哪个阶段,接下来该学些什么,避免碰太多 ...

  2. Docker学习笔记 — 配置国内免费registry mirror

    Docker学习笔记 — 配置国内免费registry mirror Docker学习笔记 — 配置国内免费registry mirror

  3. docker学习笔记1 -- 安装和配置

    技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔 ...

  4. docker学习资料整理(持续更新中..)

    docker最近可以说火得一踏糊涂,跟 51大神在交流技术的时候这个东西会多次被提到,当我们还玩vm+linux/freebsd的时候,人家已经上升到更高层次了,这就是差距,感觉好高大上的样子,技术之 ...

  5. Docker学习笔记之一,搭建一个JAVA Tomcat运行环境

    Docker学习笔记之一,搭建一个JAVA Tomcat运行环境 前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序 ...

  6. Docker学习总结之Run命令介绍

    Docker学习总结之Run命令介绍 本文由Vikings(http://www.cnblogs.com/vikings-blog/) 原创,转载请标明.谢谢! 在使用Docker时,执行最多的命令某 ...

  7. docker~学习笔记索引

    回到占占推荐博客索引 使用docker也有段时间了,写了不少文章与总结,下面把它整理个目录出来,方便大家去学习与检索! docker~学习笔记索引 docker~linux下的部署和基本命令(2017 ...

  8. Docker学习笔记 - Docker容器内部署redis

    Docker学习笔记(2-4)Docker应用实验-redist server 和client的安装使用 一.获取redis容器(含客户端和服务端) 二.创建服务端容器 1.在终端A中运行redis- ...

  9. docker学习笔记(一)—— ubuntu16.04下安装docker

    docker学习笔记(一)—— ubuntu16.04下安装docker 原创 2018年03月01日 14:53:00 标签: docker / ubuntu 1682 本文开发环境为Ubuntu ...

随机推荐

  1. [LeetCode] 343. Integer Break 整数拆分

    Given a positive integer n, break it into the sum of at least two positive integers and maximize the ...

  2. [LeetCode] 116. Populating Next Right Pointers in Each Node 每个节点的右向指针

    You are given a perfect binary tree where all leaves are on the same level, and every parent has two ...

  3. CUDA编程学习笔记1

    CUDA编程模型是一个异构模型,需要CPU和GPU协同工作. host和device host和device是两个重要的概念 host指代CPU及其内存 device指代GPU及其内存 __globa ...

  4. Java for循环每次都通过list.size()和 string.length()获取大小是否消耗性能?

    前言 有人说在for循环之前用一个局部变量先获取到list.size().str.length(),然后在for循环的判断条件里通过这个局部变量替换list.size().str.length()会节 ...

  5. 我自己整理的 Linux 常用命令

    1.查看文件安装路径: 由于软件安装的地方不止一个地方,所有先说查看文件安装的所有路径(地址). 这里以 xsp 为例.比如说我安装了xsp,但是不知道文件都安装在哪些地方.放在哪些文件夹里,可以用下 ...

  6. http响应总结:常见http响应错误总结

    工作中经常会被同事问这个http请求为什么调不通,我虽然能解释清楚错误是什么,但是没有总结过,想到刚开始时,也是看了别人的文章才会的,所以总结一下,贡献一下自己的经验. http 404 响应 404 ...

  7. <compilation debug="true" targetFramework="4.5.2"> 报错解决方案

    有的时候新建项目,默认会选择比较高的 .net framework 版本如 4.5.2 有的时候发布项目就会遇到这个问题 解决的话 改成4.0就行了! 看你发布在哪里,如果在本地或者服务器,只要去下载 ...

  8. Layui 时间转换时间戳

    我比较喜欢用Layui,当然也遇到一些坑!例如:绑定时间的时候是那种 是这种13位数据的日期,如果不经过转换是不能正常显示的,当然这是我遇到的问题不知道你们有没有遇到,后来我也是经过了解才知道怎么回事 ...

  9. SQL 去重 DISTINCT 语法

    SQL SELECT DISTINCT语句 在表中可能会包含重复值.这并不成问题, 不过有时你也许希望仅仅列出不同(distinct)的值. 关键词DISTINCT 用于返回唯一不同的值 语法 SEL ...

  10. Java内功心法,创建型设计模式包括哪些

    1. 单例(Singleton) Intent 确保一个类只有一个实例,并提供该实例的全局访问点. Class Diagram 使用一个私有构造函数.一个私有静态变量以及一个公有静态函数来实现. 私有 ...