欢迎投稿

今日深度:

拜读:docker容器与容器云(2),拜读docker

拜读:docker容器与容器云(2),拜读docker



总结一下docker的学习搭建过程
看了3.1讲的内核,比较懵逼
看了网上的挑一挑外挂,基于python和模拟器的,试了试,都整好了,结果模拟器上微信的挑一挑打不开了。。。

1,获取镜像 docker pull haproxy docker pull redis docker pull django 2,分别启动六个容器 三个redis(一主两从) docker run -it --name redis-master redis /bin/bash docker run -it --name redis-slave1 --link redis-master:master redis /bin/bash docker run -it --name redis-slave2 --link redis-master:master redis /bin/bash 两个Django docker run -it --name APP1 --link redis-master:db -v /root/Projects/Django/App1:/usr/src/app django /bin/bash docker run -it --name APP2 --link redis-master:db -v /root/Projects/Django/App2:/usr/src/app django /bin/bash 一个HAProxy docker run -it --name HAProxy --link APP1:APP1 --link APP2:APP2 -p 6301:6301 -v ~/Projects/HAProxy:/tmp haproxy /bin/bash 建议开七个窗口
2,配置三个redis 针对没有使用-v参数的容器  查看他的默认挂载点 查看对应的挂载点 docker inspect imageID | grep Source 从网上下载redis.conf【地址:http://download.redis.io/releases/redis-4.0.6.tar.gz】文件。对应的大版本就行 流程是:
1,使用docker ps -a 查看所有容器在,在使用docker inspect f2b | grep -E "Source|Destination"命令查看三个redis对应的挂载目录
source对应的是主机的挂载点,Destination对应的是容器中与之对应的挂载点 2,拷贝redis.conf cd <Source.value> cp <you_redis.conf_dir>/redis.conf redis,conf 3,修改参数, 主节点修改三个参数 band 0.0.0.0 #不然会搜索不到主redis deamonize yes pidfile /var/run/redis.pid 从节点修改四个参数 band 0.0.0.0 deamonize yes pidfile /var/run/redis.pid #这里该不该都行 slaveof master 6379 4,进入对应的容器 5,进入到对应的挂载点目录,cd <Destination.value> 6,将其redis.conf拷到 /usr/local/bin/, 7,启动redis, redis.server redis.conf 8,测试主从redis redis-cli 进入到redis的命令,使用set和get对其设置值和取值

3,配置两个App
在容器中使用pip命令安装redis pip install redis 测试
2,创建并启动App 使用容器中python+Django环境生成 cd /usr/src/app mkdir dockerweb cd dockerweb cd dockerweb django-admin.py startproject redisweb cd redisweb python manage.py startapp helloworld 生成helloworld文件 切换到主机中,编辑相应的配置文件:views、setting、urls cd /root/Projects/Django/App1/dockerweb/redisweb/helloworld/ vim views.py from django.shortcuts import render # Create your views here. from django.http import HttpResponse import redis def hello(request):     str = redis.__file__     str += "<br>"     r = redis.Redis(host='db',port=6379, db=0)     info = r.info()     str += ("set hi <br>")     r.set('Hi','Helloworld-APP1')     str +=("Get Hi:%s <br>" % r.get('Hi'))     str +=("Redis Info:<br>")     str +=("Key:Info Value")     for key in info:         str += ("%s : %s <br>" % (key,info[key]))     return HttpResponse(str) 编辑setting文件 cd ../redisweb/ #允许外来访问 ALLOWED_HOSTS = ['*'] #添加helloworld项目 # Application definition INSTALLED_APPS = [     'django.contrib.admin',     'django.contrib.auth',     'django.contrib.contenttypes',     'django.contrib.sessions',     'django.contrib.messages',     'django.contrib.staticfiles',     'helloworld', ] 编辑urls.py 添加引用 from helloworld.views import hello 增加链接 url(r'^helloworld$',hello),

编译helloworld项目 python manage.py makemigrations python manage.py migrate python manage.py createsuperuser #设置后台管理的用户名和密码 邮箱随便设置
启动helloworld项目 python manage.py runserver 0.0.0.0:8001

4,HAProxy容器节点的配置
1,编辑haproxy.cfg文件 cd ~/Projects/HAProxy vim haproxy.cfg global   log 127.0.0.1 local0   maxconn 4096   chroot /usr/local/sbin   daemon   nbproc 4   pidfile /usr/local/sbin/haproxy.pid defaults   log 127.0.0.1 local3   mode http   option dontlognull   option redispatch   retries 2   maxconn 2000   balance roundrobin   timeout connect 5000ms   timeout client 50000ms   timeout server 50000ms listen redis_proxy   bind 0.0.0.0:6301    bind-process 2 #pao zai laing ge CPU shang`   stats enable   stats uri /haproxy-stats       server APP1 APP1:8001 check inter 2000 rise 2 fall 5       server APP2 APP2:8002 check inter 2000 rise 2 fall 5
适当的注释(注:这里少了两项: bind 0.0.0.0:6301,bind-process 2 #pao zai laing ge CPU shang`)
2,进入容器并启动 cd /tmp cp  haproxy.cfg /usr/local/sbin cd /usr/local/sbin haproxy -f haproxy.cfg 注:杀死所有有关HAProxy的进程:killall haproxy 测试


美好的一天  明天加油
版权声明:菜鸟历程,多多指教! http://blog.csdn.net/u013991917/article/details/79039635

www.htsjk.Com true http://www.htsjk.com/shujukunews/10153.html NewsArticle 拜读:docker容器与容器云(2),拜读docker 总结一下docker的学习搭建过程 看了3.1讲的内核,比较懵逼 看了网上的挑一挑外挂,基于python和模拟器的,试了试,都整好了,结果模拟器上微...
相关文章
    暂无相关文章
评论暂时关闭