docker 基本原理及快速入门

作者地址:青牛Docker是一个开源项目,诞生于2013年初,最初是dotCloud公司内部的一个业余项目。它基于Google公司推出的Go语言实现。项目后来加入了Linux基金会,遵从了Apache2.0协议,项目代码在GitHub上进行维护。Docker自开源后受到广泛的关注和讨论,以至于dotCloud公司后来都改名为DockerInc。Redhat已经在其RHEL6.5中集中支持Docker;Google也在其PaaS产品中广泛应用。Docker项目的目标是实现轻量级的操作系统虚拟化解决方案。Docker的基础是Linux容器(LXC)等技术。在LXC的基础上Docker进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作Docker的容器就像操作一个快速轻量级的虚拟机一样简单。下面的图片比较了Docker和传统虚拟化方式的不同之处,可见容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统方式则是在硬件层面实现。作为一种新兴的虚拟化方式,Docker跟传统的虚拟化方式相比具有众多的优势。Docker在如下几个方面具有较大的优势:更快速的交...

centos7下的docker安装ES集群

1>拉取镜像dockerpullelasticsearch:7.6.22>创建数据挂在目录,以及配置ElasticSearch集群配置文件mkdir/docker/ESmkdir/docker/ES/data1mkdir/docker/ES/data2mkdir/docker/ES/data3mkdir/docker/ES/config在config文件夹下创建配置文件touch es1.ymles2.ymles3.yml编辑es1.yml文件vies1.ymlcluster.name:hzmt-es-clusternode.name:es-node1network.bind_host:0.0.0.0network.publish_host:192.168.10.122http.port:9200transport.tcp.port:9300http.cors.enabled:truehttp.cors.allow-origin:"*"node.master:truenode.data:truediscovery.zen.minimum_master_nodes:...

Docker安装安装单机版ELK日志收集系统

Docker安装单机版ELK日志收集系统概述现在Elasticsearch是比较火的,很多公司都在用.而Docker也正如火如荼,所以我就使用了Docker来安装ELK,这里会详细介绍下安装的细节以及需要注意的地方.先来强调一下, Elasticsearch和Kibana必须用相同版本,这个可以避免很多坑。日志主要包括系统日志、应用程序日志和安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。开源实时日志分析ELK平台由ElasticSearch、Logstash和Kiabana三个开源工具组成:1)ElasticSearch是一个基于Lucene的开源分布式搜索服务器。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfulweb接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的...

redhat6_docker_redmine

nedit/etc/yum.repos.d/docker.repo&[dockerrepo]name=DockerRepositorybaseurl=https://yum.dockerproject.org/repo/main/centos/6/enabled=1gpgcheck=1gpgkey=https://yum.dockerproject.org/gpgyumupdateyuminstall-ydocker-enginedockerrun--name=redmine-d--link=postgresql-redmine:postgresql--publish=10083:80  --env='REDMINE_PORT=10083' --env='SMTP_HOST=smtp.exmail.qq.com' --env='SMTP_METHOD=async_smtp'--env='SMTP_PORT=465'--env='SMTP_USER='--env='SMTP_PASS=' -eTZ="Asia/Shanghai"-...
代码星球 代码星球·2021-02-15

Linux环境安装、卸载Docker

安装:  1、Docker要求CentOS系统的内核版本高于3.10,通过 uname-r 命令查看你当前的内核版本是否支持安账docker  2、更新yum包:sudoyumupdate  3、安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的    sudoyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2  4、设置yum源:sudoyum-config-manager--add-repohttps://download.docker.com/linux/centos/docker-ce.repo      5、可以查看所有仓库中所有docker版本,并选择特定版本安装:yumlistdocker-ce--showduplicates|sort-r      6、安装docker:sudoyuminstalldocker-ce-17.12.0.ce  7、启动、设置开启开机启动    sudosystemctl...

ubuntu安装docker步骤及docker常用命令

   更新ubuntu的apt源索引   sudoapt-getupdate   安装包允许apt通过HTTPS使用仓库   sudoapt-getinstall   apt-transport-https    ca-certificates   curl   software-properties-common   添加Docker官方GPGkey   curl-fsSLhttps://download.docker.com/linux/ubuntu/gpg|sudoapt-keyadd-   设置Docker稳定版仓库   sudoadd-apt-repository    "deb[arch=amd64]https://download.docker.com/linux/ubuntu    $(lsb_release-cs)   stable"   添加仓库后,更新apt源索引   sudoapt-getupdate   安装最新版DockerCE(社区版)   sudoapt-getinstalldocker-ce   检查DockerCE是否安装正确   sudodocke...

Docker开启远程安全访问

原文链接:https://www.cnblogs.com/niceyoo/p/13270224.html一、编辑docker.service文件vi/usr/lib/systemd/system/docker.service找到 [Service] 节点,修改ExecStart属性,增加 -Htcp://0.0.0.0:2375ExecStart=/usr/bin/dockerd-Hfd://--containerd=/run/containerd/containerd.sock-Htcp://0.0.0.0:2375这样相当于对外开放的是 2375 端口,当然也可以根据自己情况修改成其他的。二、重新加载Docker配置生效systemctldaemon-reloadsystemctlrestartdocker我们通过浏览器访问 2375 测试一下,格式为:http://ip:2375/version如果无法访问的话,可以尝试一下开放防火墙2375端口,具体命令如下:firewall-cmd--zone=public...

Docker ui管理工具:Portainer

Portainer是一款优秀的Docker图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,安装起来也非常的简单,推荐给大家。1、下载Portainer镜像搜索portainer镜像:[root@iZbp13sno1lc2yxlhjc4b3Z/]#dockersearchportainerNAMEDESCRIPTIONSTARSOFFICIALAUTOMATEDportainer/portainerMakingDockermanagementeasy.https://porta…1580下载portainer镜像:[root@iZbp13sno1lc2yxlhjc4b3Z/]#dockerpullportainer/portainerUsingdefaulttag:latestlatest:Pullingfromportainer/portainerd1e017099d17:Pullcomplete2、创建Por...

Docker实践:Docker报错及相关问题记录

1.问题:docker:Errorresponsefromdaemon:Conflict.Thecontainername"***"isalreadyinuse原因:容器名占用解决办法:(1)给容器换一个名字,比如说dockerrun-it--name=mycentos2centos:7/bin/bash,可以解决问题.(2)将原来的容器删除查询当前容器:dockercontainerls-all删除当前容器:dockercontainerrm容器名(提示:这一步要确定删除容器没问题的情况下,才可以做)2.问题:docker启动时报错Errorresponsefromdaemon:driverfailedprogrammingexternalconnectivityonendpoint*原因:docker服务启动时定义的自定义链DOCKER由于某种原因被清掉重启docker服务及可重新生成自定义链DOCKER解决办法:重启docker服务后再启动容器systemctlrestartdocker 3.问题:docker启动容器后,容器自动退出(使用dockerps命令查看无运行...

进入正在运行的Docker容器的4种方式

 简介: 进入正在运行的Docker容器的4种方式在使用Docker创建了容器之后,如何进入该容器呢?进入Docker容器比较常见的几种做法如下:使用dockerattach使用SSH使用nsenter使用exec一、使用dockerattach进入Docker容器Docker提供了attach命令来进入Docker容器。  接下来我们创建一个守护态的Docker容器,然后使用dockerattach命令进入该容器。$ sudo docker run -itd ubuntu:14.04 /bin/bash    然后我们使用dockerps查看到该容器信息,接下来就使用dockerattach进入该容器$ sudo docker attach 容器ID  但在,使用该命令有一个问题。当多个窗口同时使用该命令进入该容器时,所有的窗口都会同步显示。如果有一个窗口阻塞了,那么其他窗口也无法再进行操作。因为这个原因,所以dockerat...

Docker实践:GO Docker部署与打包实例

转载:https://segmentfault.com/a/1190000014297111?utm_medium=referral&utm_source=tuicool事情是这样的一个人程序员,用golang写了个server,写完后...不会部署:) 是的,这个人就是我... 今天真的是要被自己笑死 终于有机会在公司项目中使用golang进行开发,整个开发过程相当亢奋!然而...当跟前端小哥哥联调完接口后,小哥哥问我什么时候能给线上地址 (一脸懵)忘记还有上线这回事了 往往自己业余写的golang项目就直接 gobuild 然后拖到服务器然后运行一下搞定 但是这是公司项目啊!!!会给你ftp???你可以碰到服务器???(仿佛听到了DBA小哥哥的心声) 于是...我找到了DBA小哥哥,问该如何发布 “你直接打包一个rpm或者给个docker吧”哈? rpm?你确定不是npm? docker???(卧槽,我好像两年前就该看看了)我还没看过...于是乎虚心请教D...

Docker 系列(六):Docker镜像构建文件Dockerfile及相关命令介绍

使用dockerbuild命令或使用DockerHub的自动构建功能构建Docker镜像时,都需要一个Dockerfile文件。Dockerfile文件是一个由一系列构建指令组成的文本文件,dockerbuild命令会根据这些构建指令完成Docker镜像的构建。本文将会介绍Dockerfile文件,及其中使用的构建指令。Dockerfile文件使用Dockerfile文件格式Dockerfile中使用指令3.1 FROM3.2 RUN3.3 CMD3.4 ENTRYPOINT3.5 LABEL3.6 EXPOSE3.7 ENV3.8 ADD3.9 COPY3.10 VOLUME3.11 USER3.12 WORKDIR3.13 ARG3.14 ONBUILD3.15 STOPSIGNAL3.16 SHELLdockerbuild命令会根据Dockerfile文件及上下文构建新Docker镜像。构建上下文是指Dockerfile所...

Docker 系列(五):Docker 容器数据卷(Data Volume)与数据管理

 卷(Volume)是容器中的一个数据挂载点,卷可以绕过联合文件系统,从而为Docker提供持久数据,所提供的数据还可以在宿主机-容器或多个容器之间共享。通过卷,我们可以可以使修改数据直接生效,而不必重新构建镜像。数据卷1.1添加数据卷1.2卷位置1.3挂载本地数据到容器数据卷数据卷容器备份、恢复与迁移数据卷3.1备份数据卷3.2备份数据卷数据卷是一个可以绕过联合文件系统的,专门指定的可在一或多个容器间共享目录。卷为提供为持久化或共享数据提供了一些有用的特性。数据卷设计的初哀是提供持久化数据,而与容器的生命周期无关。因此,在删除容器时,Docker不会自动删除卷,直到没有容器再引用。1.1添加数据卷可以在dockercreate和dockercreate命令创建容器时,通过-v参数为容器添加数据卷。-v参数参数可以多次使用,以添加多个数据卷。如,可以像下面这样为容器添加一个卷:$sudodockerrun-t-i-v/home/test--nametestitbilu/test/bin/bash这样就会在容器内/webapp位置创建一个卷。除了在创建容器时添加数据卷外,还可以...

Docker 系列(三):Docker 网络模式详解

 一、前言Docker作为目前最火的轻量级容器技术,有很多令人称道的功能,如Docker的镜像管理。然而,Docker同样有着很多不完善的地方,网络方面就是Docker比较薄弱的部分。因此,我们有必要深入了解Docker的网络知识,以满足更高的网络需求。我们在使用dockerrun创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式: host模式,使用--net=host指定。容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。container模式,使用--net=container:NAME_or_ID指定。创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP、端口范围。 none模式,使用--net=none指定。该模式关闭了容器的网络功能。bridge模式,使用--net=bridge指定,默认设置。此模式会为每一个容器分配、设置IP等,并将容器连接到一个docker0虚拟网桥,通过docker0网桥以及Iptablesnat表配置与宿主机通信。注意:使用doc...

Docker 系列(二): Docker 镜像原理

 摘要:近日,DaoCloud软件工程师孙宏亮在CSDNContainer微信群为大家带来了Docker镜像原理的深度分享,本次分享的重点是Docker镜像,分享的内容主要包含两个部分:1)Docker镜像的基本知识;2)Dockerfile,Docker镜像与Docker容器的关系。嘉宾介绍:孙宏亮,硕士,浙江大学毕业,现为DaoCloud软件工程师,出版有《Docker源码分析》,目前主要负责企业级容器云平台的研发工作。数年来一直从事云计算、PaaS领域的研究与实践,是国内较早一批接触Docker的先行者,同时也是Docker技术的推广者。1.1什么是Docker镜像从整体的角度来讲,一个完整的Docker镜像可以支撑一个Docker容器的运行,在Docker容器运行过程中主要提供文件系统视角。例如一个ubuntu:14.04的镜像,提供了一个基本的ubuntu:14.04的发行版,当然此镜像是不包含操作系统Linux内核的。说到此,可能就需要注意一下,linux内核和ubuntu:14.04Docker镜像的区别了。传统虚拟机安装ubuntu:14.04会包含两部分,第...
代码星球 代码星球·2021-02-14
首页上一页12345...下一页尾页