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. Android中的Service组件具体解释

    Service与Activity的差别在于:Service一直在后台执行,他没实用户界面,绝不会到前台来. 一,创建和配置Service 开发Service须要两个步骤:1.继承Service子类,2 ...

  2. java.net.ConnectException: failed to connect to /10.0.2.2 (port 80): connect

    在使用GENYMOTION作为Android程序调试模拟器连接web服务器时,报了:java.net.ConnectException: failed to connect to /10.0.2.2 ...

  3. 在LoadRunner中设置HTTP请求time-out的时间

    Error -27728: Step download timeout (120 seconds) has expired when downloading non-resource(s) [MsgI ...

  4. Gherkin关键字

    Feature 功能 Background 背景 Scenario 场景 Outline Scenarios(or Examples) Given 假如.假设.假定 When 当 Then 那么 An ...

  5. ActiveMQ与MSMQ的异同

    http://www.cnblogs.com/luluping/archive/2010/11/03/1867841.html      目前常用的消息队列组建无非就是MSMQ和ActiveMQ,至于 ...

  6. 小程序排错(redis导致)

    小程序突然出问题,题库加载不了,程序正常,测试环境同样环境,同样代码都正常,但是线上数据秒过期,怀疑redis过期时间设置有问题,但是检查配置没问题,写入数据带过期时间也正常. redis设置key: ...

  7. webAPP开发的问题(总结)

    自Iphone和Android这两个牛逼的手机操作系统公布以来,在互联网界从此就多了一个新的名词-WebApp(意为基于WEB形式的应用程序.执行在高端的移动终端设备). 开发人员们都知道在高端智能手 ...

  8. INSERT 失败,因为下列 SET 选项的设置不正确: 'ARITHABORT'

    当你在SQL Server上试图更新一个索引视图引用的表时,你可能回收到如下有错误 INSERT 失败,因为下列 SET 选项的设置不正确: 'ARITHABORT' 你必须在TSQL前Set ARI ...

  9. apache gzip

    1.首先启动模块mod_deflate.so和mod_headers.so 2.httpd.conf #文件缓存时间配置<FilesMatch ".(flv|gif|jpg|jpeg| ...

  10. Java基础12 类型转换与多态(转载)

    类型检查 Java的任意变量和引用经过类型声明(type declaration),才能使用.我们之前见过对象数据.类数据.方法参数.方法返回值以及方法内部的自动变量,它们都需要声明其类型.Java是 ...