- 博客(38)
- 资源 (1)
- 收藏
- 关注
原创 Docker services 详解(34)
一、实验概述在线进行生产业务更新,将service进行横向扩展scale,然后依次更新二、实验步骤1、创建overlay网络$ docker network create -d overlay demosyspg3v0vaagz8kl61bii9dlw2、创建services$ docker service create --name web --publish 8...
2019-03-11 22:31:38
781
原创 Docker使用Swarm DockerStack部署wordpress(33)
一、编写yml文件version: '3'services: web: image: wordpress ports: - 8080:80 environment: WORDPRESS_DB_HOST: mysql WORDPRESS_DB_PASSWORD: root networks: - my-n...
2019-03-11 22:09:26
207
原创 Docker RoutingMesh集群间通信(31)
实验1、创建overlay网络$ docker network create -d overlay demofow77yknnwvrvxid3et8lzrcl$ docker network lsNETWORK ID NAME DRIVER SCOPEffef5876e807 ...
2019-03-08 01:01:35
329
原创 Docker通过swarm service部署WordPress(30)
一、实验概述实验环境:node3为swarm-manager,node1和node2为swarm-work通过swarm工具部署wordpress二、实验步骤1、在node3上创建overlay网络,并会同步到其他节点,保证不同主机上的容器通信,这个机制由swarm完成,不需要再去安装etcd等类似的分布式存储$ docker network create -d overla...
2019-03-07 23:18:15
229
原创 Docker 创建维护service并扩展(29)
1、创建service$ docker service create --name redis1 redis3zeolj2m8ejdlbni1o5utwwmpoverall progress: 1 out of 1 tasks1/1: runningverify: Service converged2、查看已创建的service,1/1代表这个service可以水平扩展$ ...
2019-03-07 22:38:49
485
原创 Docker三节点swarm集群的使用(28)
一、3种方式搭建实验环境建议用第三种,方便快捷,但是只能用4个小时二、实验概述搭建Docker三节点swarm,一个管理manager,两个节点node三、实验步骤1、创建Swarm的Manager节点$ docker swarm init --advertise-addr=192.168.0.8Swarm initialized: current node (q...
2019-03-07 17:27:32
318
原创 Docker复杂应用部署(26)
一、架构图二、实验概述利用docker-compose实现一键部署应用三、实验步骤1、yml文件version: "3"services: voting-app: build: ./voting-app/. volumes: - ./voting-app:/app ports: - "5000:80" link...
2019-03-06 21:11:56
349
1
原创 Docker容器扩展和负载均衡(25)
一、简单架构图二、实验概述实现容器web的在线动态扩展三、实验步骤1、docker-compose的yml文件,version: "3"services: redis: image: redis web: build: context: . dockerfile: Dockerfile environment...
2019-03-06 20:50:08
463
原创 Docker Compose的安装和简单使用(24)
一、安装1、下载curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose国内下载加速[root@docker1 bin]# curl -L https:/...
2019-03-06 20:24:55
221
原创 Dockerfile实战(12)
一、实验概述通过Dockerfile文件build一个Linux系统的命令行工具stress,传参运行容器二、实验步骤1、在ubuntn镜像中安装stress压力测试工具的步骤[docker@localhost ~]$ docker run -it ubunturoot@360b9cce063e:/# apt-get update && apt-get inst...
2019-03-06 20:02:36
248
原创 Docker持久化存储和数据共享bind Mount之开发应用(22)
ps:创建容器时报如下错误,原因是build镜像时sh脚本没有执行权限造成,将sh脚本加上执行权限,然后重新build镜像即可docker: Error response from daemon: OCI runtime create failed: container_linux.go:344: starting container process caused "exec: \"sc...
2019-03-05 23:56:04
187
原创 Docker持久化存储和数据共享bind Mounting(21)
一、Bind Mouting通过将本地目录与容器目录相对应,进行持久化保存,此与data volume不同之处在于,不用在Dockerfile中指定volume参数二、实验步骤1、查看Dockerfile,将index.html作为nginx的首页[root@docker1 docker-nginx]# more Dockerfile # this same shows h...
2019-03-05 22:40:06
245
原创 Docker持久化存储和数据共享Data Volume(20)
一、Data Volume实验概述创建一个拥有data Volume的容器mysql,即使容器mysql被删除,但是数据库的内容不会丢失二、实验步骤1、查看从docker官网pull的mysql镜像文件Dockerfile,有一个VOLUME的参数设置/var/lib/mysql,此为容器mysql的数据存储位置2、创建容器mysql,需要 -e 设置密码...
2019-03-05 22:04:59
307
原创 Docker overlay网络和etcd通讯(19)
一、overlay网络简介容器在两个跨主机进行通信的时候,可以使用overlay network这个网络模式进行通信,Overlay 技术是在现有的物理网络之上构建一个虚拟网络,上层应用只与虚拟网络相关,当前主流的 Overlay 技术主要有VXLAN, GRE/NVGRE和 STT。二、实验目的将上篇博客的实验进行改进,在两个宿主机分别创建容器redis和容器flask-redis,...
2019-03-05 01:39:03
959
原创 Docker在多容器部署应用(18)
一、实验概述分别创建部署两个容器flask-redis和redis,让容器flask-redis可以访问容器redis,并将5000映射至本地,进行访问。二、实验步骤1、上传app.py到/app目录下,以下为app.py的内容,实现通过访问5000端口,达到让redis显示记录访问次数的效果from flask import Flaskfrom redis import ...
2019-03-04 21:36:43
282
1
原创 Docker网络的none和host(17)
一、none1、新建容器test3连接到none[root@localhost ~]# docker run -it -d --name test3 --network none python465ba8498be7bdf88cfe77054c14b943a7895833051db2902c9e7dba9adc82f12、查看none,会发现容器test3没有任何IP地址,相当于...
2019-03-04 17:22:42
297
原创 Docker的端口映射(16)
一、实验概况新建一个基于nginx镜像的容器web,将nginx的80端口对外暴露,以下为实验架构图二、实验步骤[root@localhost ~]#docker run --name web -d -p 80:80 nginx###使用-p参数,将nginx的80端口映射到宿主机本地的80端口...
2019-03-04 16:56:55
134
原创 Docker多容器通信(15)
方法一:Link应用一个容器通过link另一个容器的name进行通信,类似于添加了DNS记录,比如生产环境中,如果一个应用容器与后台数据库容器通信,可以通过IP地址进行通信,但在开发过程中并不知道生产中数据库的IP地址,在这种情况下可以使用link使两个容器进行通信[root@localhost ~]#docker run -d --name test2 --link test1 pyt...
2019-03-04 16:23:52
1101
原创 docker Bridge0详解(14)
一、 两个容器的通信原理 列出docker网络情况,会有一个bridge类型[root@localhost ~]# docker network lsNETWORK ID NAME DRIVER SCOPE189c7cd427cf bridge bridge ...
2019-02-26 16:14:05
1919
原创 Docker网络技术networknamespace(13)
一、如何创建一个linux的networknamespace[root@localhost ~]# ip netns add test1[root@localhost ~]# ip netns add test2[root@localhost ~]# ip netns listtest1test2[root@localhost ~]# ip netns exec test1 ip ...
2019-02-26 15:41:21
179
原创 Docker容器的设置资源限制(12)
一、对内存进行限制docker run --memory=200M [image name] 注意,容器的运行内存=memory--swap+memory的值,没有设置memory--swap则默认和memory的值一致。二、对CPU进行限制docker run --cpu-shares=10 --name=demo1 [image name] --cpu 1c...
2019-02-26 11:46:04
916
原创 Docker容器基本操作(11)
一、docker exec对运行中的容器,执行命令docker exec -it [container id] [command]docker exec -it [container id] ip adocker exec -it [container id] /bin/bash二、停止容器docker stop [container id]三、 --name...
2019-02-26 00:10:09
148
原创 Dockerfile的使用和实践(10)
一、实验概述将一个Python程序打包成一个docker image,然后运行成一个Container容器二、实验步骤1、app.py的内容from flask import Flaskfrom redis import Redisimport osimport socketapp = Flask(__name__)redis = Redis(host=os.env...
2019-02-25 23:36:57
462
1
原创 Docker镜像发布(9)
https://hub.docker.com这是一个共享的image镜像库,类似于GitHub第一种 push到https://hub.docker.com1、登录[docker@localhost ~]$ docker loginLogin with your Docker ID to push and pull images from Docker Hub. If you do...
2019-02-21 21:47:48
1680
1
原创 Dockerfile语法梳理及最佳实践(8)
一、FROM 二、LABEL 三、RUN 四、WORKDIR 五、ADD&&COPY 六、ENV
2019-02-21 00:11:33
218
原创 基于已有的Base Image,创建出新的Base Image(7)
一、docker container commit1、交互式运行容器[docker@localhost ~]$ docker run -it centos2、进行修改[docker@localhost ~]$ docker run -it centos[root@3665e1d73dae /]# yum install -y vim3、commit成新的Image...
2019-02-20 23:59:06
327
原创 容器Container的简单操作(6)
一、概念Image可以看做是一类,而Container则为基于类的实例化 二、容器操作1、列出正在运行的容器docker container ls2、列出所有容器,包括已退出运行的docker container ls -a简化命令 :docker ps -a3、交互式运行容器[docker@localhost hello-world]$ docker ...
2019-02-20 23:27:47
362
原创 如何制作Base Image--简单版(5)
PS小技巧:不运行sudo直接运行docker命令sudo groupadd dockersudo gpasswd -a docker docker #将用户加入docker组sudo service docker restart#重新登录shell一、实验概述编译一个hello-world的C语言可执行文件,然后将这个文件制作成为Base Image二、实验操作...
2019-02-20 23:10:39
378
原创 Docker的架构和底层技术介绍(4)
一、Docker平台二、Docker Engine三、Docker架构 四、底层的技术支持其实,docker底层并不是什么新技术,均为Linux已有技术五、镜像linux分为内核空间和用户空间,在bootfs上制作各种Linxu发行版,而基础镜像Base Image是基于roofs的Image有两种获取方式:一是编辑Dockerfile文...
2019-02-15 00:43:13
273
原创 实践RedHat Linux7.4环境安装Docker(2)
1、删除系统中的旧版本Dockeryum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ ...
2019-02-14 15:45:54
1316
原创 Docker容器的概念介绍(1)
什么是Docker容器与Docker的区别Docker能干什么?容器编排工具容器解决了什么问题?解决了开发和运维之间的矛盾在开发和运维之间搭建了一个桥梁,是Devops的最佳解决方案...
2019-02-11 23:07:49
274
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人