docker入门

使用场景:

  面向产品、面向开发、面向测试、面向运维、面向自动化、面向微服务、面向大规模的分布式架构(微信红包)

虚拟化解决方案:

 商业解决方案:
  VMware vSphere,VMware Funsion
 开源解决方案
  OpenStack,KVM

容器解决方案:

LXC
OpenVZ
Docker
imctfy,google开源的容器虚拟化的实现

CGroups 限制容器资源使用

Namespace机制,实现容器的隔离

auFS,分层文件系统

chroot,文件系统的隔离

只读文件和可写文件并存,只读部分定义为image,可写部分是container

docker生命周期

docker image: 是一个季度精简的linux运行环境,没有多余的工具,需要自己通过镜像叠加的方式生成新的image。

可以使用hub.docker.com作为我们公共或者私有的registry。

repository:是镜像的仓库。

registry:是 repository存在的地方(如:docker hub)。

运行一个container的本身就是开启一个独立的namespace的进程,docker通过run的命令来启动一个container。运行一个container必须要指定一个image作为初始化的文件系统。

sudo docker run [OPTIONS] IMAGE[:TAG][COMMAND][ARG...]

拉取ubuntu系统镜像

运行镜像文件启动容器

 查看完整的image ID

container协调管理网络通信

我们运行docker容器的时候,使用了-d参数,把容器在后台运行后。这个时候我们使用docker ps命令,我们就可以知道哪些程序在后台运行。
我们要怎么进入到docker容器呢?
1:使用docker attach命令
docker attach db3 或者 docker attach d48b21a7e439
db3是后台容器的NAMES,d48b21a7e439是容器的进程ID  CONTAINER ID
然后就进去了这个容器的ssh界面。
但是它有一个缺点,只要这个连接终止,或者使用了exit命令,容器就会退出后台运行
2:使用docker exec命令
这个命令使用exit命令后,不会退出后台,一般使用这个命令,使用方法如下
docker exec -it db3 /bin/sh 或者 docker exec -it d48b21a7e439 /bin/sh
db3是后台容器的NAMES,d48b21a7e439是容器的进程ID  CONTAINER ID
 /bin/sh 是固定写法,它也能进入这个容器
 docker循环打印helloworld
docker run -d centos /bin/sh -c "while true; do echo hello world; sleep 2; done"

linux centos中使用yum安装tomcat

1、查看tomcat在服务器上面的版本

yum search tomcat

2、安装Tomcat

sudo yum install tomcat -y
最重要的Tomcat的文件将位于/usr/share/tomcat。你想运行一个web应用程序,你可以将它放在/usr/share/tomcat/webapps的目录,配置Tomcat重新启动Tomcat服务。
安装位置
/etc/tomcat
主程序/软件存放webapp位置
/var/lib/tomcat/webapps
日志记录位置
/var/log/tomcat
在Centos使用yum安装后,Tomcat相关的目录都已采用符号链接到/usr/share/tomcat目录,包含webapps等,这很方便我们配置管理。
/usr/share/tomcat

查看全部tomcat安装目录

rpm -ql tomcat | cat -n

启动、停止、重启tomcat

 service tomcat6 start
service tomcat6 stop
service tomcat5 restart
 

Docker官方英文资源

docker官网:http://www.docker.com

Docker windows入门:https://docs.docker.com/windows/

Docker Linux 入门:https://docs.docker.com/linux/

Docker mac 入门:https://docs.docker.com/mac/

Docker 用户指引:https://docs.docker.com/engine/userguide/

Docker 官方博客:http://blog.docker.com/

Docker Hub: https://hub.docker.com/

Docker开源: https://www.docker.com/open-source

Docker@Github: https://github.com/docker/docker/issues

二、docker入门的更多相关文章

  1. Docker入门教程(二)命令

    Docker入门教程(二)命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第二篇,介绍了Docker的基本命令以及命令的用法和功能. 在Docker ...

  2. 【实战】Docker入门实践二:Docker服务基本操作 和 测试Hello World

    操作环境 操作系统:CentOS7.2 内存:1GB CPU:2核 Docker服务常用命令 docker服务操作命令如下 service docker start #启动服务 service doc ...

  3. 【转载】大白话Docker入门(二)

    原文:https://yq.aliyun.com/articles/63517?spm=a2c4e.11153940.blogcont63035.15.12011c3fddklk0 上篇的大白话Doc ...

  4. Docker入门(二):安装/卸载

    这个<Docker入门系列>文档,是根据Docker官网(https://docs.docker.com)的帮助文档大致翻译而成.主要是作为个人学习记录.有错误的地方,Robin欢迎大家指 ...

  5. Docker入门

    -----------------------------------------Docker入门教程(一)介绍Docker入门教程(二)命令Docker入门教程(三)DockerFileDocker ...

  6. Docker 入门实践

    欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ 作者:张戈 导语 本文从新手视角记录了一个实际的Dokcer应用场景从创建.上传直到部署的详细过程,并简单的介绍了腾讯云容器服务的使用方法 ...

  7. 【Docker】(1)---Docker入门篇

    Docker入门篇 简单一句话: Docker 是一个便携的应用容器. 一.Docker的作用 网上铺天盖地的是这么说的: (1) Docker 容器的启动可以在秒级实现,这相比传统的虚拟机方式要快得 ...

  8. SpringBoot Docker入门,SpringBoot Docker安装

    SpringBoot Docker入门,SpringBoot Docker安装 ================================ ©Copyright 蕃薯耀 2018年4月8日 ht ...

  9. 【实战】Docker 入门实战一:ubuntu 和 centos 安装Docker

    Docker是什么 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布 ...

随机推荐

  1. MPTCP 源码分析(五) 接收端窗口值

    简述:      在TCP协议中影响数据发送的三个因素分别为:发送端窗口值.接收端窗口值和拥塞窗口值. 本文主要分析MPTCP中各个子路径对接收端窗口值rcv_wnd的处理.   接收端窗口值的初始化 ...

  2. 微信小程序 - 滑动显示地点信息(map)

    演示效果如下: 资源如下 marker,png index.wxml <view class="map-container"> <map id="map ...

  3. leetcode268:Missing Number

    描写叙述 Given an array containing n distinct numbers taken from 0, 1, 2, -, n, find the one that is mis ...

  4. select * from (select user())a 为什么是查询user()的意思?

    步骤:1.先查询 select user() 这里面的语句,将这里面查询出来的数据作为一个结果集 取名为 a2.然后 再 select * from a 查询a ,将 结果集a 全部查询出来

  5. java 线程的几种状态(转载)

      java thread的运行周期中, 有几种状态, 在 java.lang.Thread.State 中有详细定义和说明: NEW 状态是指线程刚创建, 尚未启动 RUNNABLE 状态是线程正在 ...

  6. 《DirectX 9.0 3D游戏开发编程基础》必备的数学知识 读书笔记

    最近在看游戏导航源码,但是看了几天感觉看不懂.里面全是一些几何运算,以及一些关于3d方面的知识.发现自己缺少3d这方面的知识,正好也想研究一下3d游戏开发的基本原理,于是决定买本书看看了,后来在ope ...

  7. Java代码Bug分析插件 FindBugs

    http://www.oschina.net/p/findbugs FindBugs是一个能静态分析源代码中可能会出现Bug的Eclipse插件工具.

  8. mac使用git管理Github

    工欲善其事,必先利其器. 在OS X Yosemite 10.10.3安装最新版本号Xcode.在terminal下能够发现git已经被安装. ~ mesut$ git --version git v ...

  9. C++语言基础(15)-友元函数和友元类

    一个类中可以有 public.protected.private 三种属性的成员,通过对象可以访问 public 成员,只有本类中的函数可以访问本类的 private 成员.现在,我们来介绍一种例外情 ...

  10. iOS开发多线程篇 10 —NSOperation基本操作

    iOS开发多线程篇—NSOperation基本操作 一.并发数 (1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3 (2)最大并发数:同一时间最多只能执行的任务的个数. ...