Docker Compose 一键部署多节点爬虫程序

目录结构

[root@localhost ~]# tree compose_crawler/
compose_crawler/
├── centos
│ ├── curl.sh
│ └── Dockerfile
└── docker-compose.yml

1、创建DockerCompose项目目录

mkdir compose_crawler
cd compose_crawler/

2、创建centos管理目录

mkdir centos
cd centos

3、创建脚本模拟爬虫文件

vim curl.sh

for i in {1..100}; do
curl http://192.168.1.72 -o /dev/null
sleep 1
done
# 添加执行权限
chmod +x curl.sh

4、创建Dockerfile文件

vim Dockerfile

# 指定镜像
FROM centos:6
# 指定管理员
MAINTAINER xiangsikai
# 复制本地文件到容器内
COPY curl.sh /
# 运行脚本文件
CMD ["/bin/bash", "curl.sh"]

5、项目目录下创建docker-compose.yml文件

vim docker-compose.yml

# 指定服务版本号
version: ''
# 服务
services:
# 服务名称
curl-test:
# 构建
build:
# 指定目录上下文构建镜像
context: ./centos
# 指定dockerfile文件名称
dockerfile: Dockerfile

6、启动dockercompose构建镜像容器

# 后台执行容器
docker-compose up -d
# 扩展添加容器数量 curl-test为容器名
docker-compose scale curl-test=20
# 查看启动容器数量
docker-compose ps
            Name                     Command        State    Ports
------------------------------------------------------------------
compose_crawler_curl-test_1 /bin/bash curl.sh Exit 0
compose_crawler_curl-test_10 /bin/bash curl.sh Up
compose_crawler_curl-test_100 /bin/bash curl.sh Up
compose_crawler_curl-test_11 /bin/bash curl.sh Up
compose_crawler_curl-test_12 /bin/bash curl.sh Up
compose_crawler_curl-test_13 /bin/bash curl.sh Up
compose_crawler_curl-test_14 /bin/bash curl.sh Up
compose_crawler_curl-test_15 /bin/bash curl.sh Up
compose_crawler_curl-test_16 /bin/bash curl.sh Up
compose_crawler_curl-test_17 /bin/bash curl.sh Up
compose_crawler_curl-test_18 /bin/bash curl.sh Up
compose_crawler_curl-test_19 /bin/bash curl.sh Up
compose_crawler_curl-test_2 /bin/bash curl.sh Up
compose_crawler_curl-test_20 /bin/bash curl.sh Up

Docker Compose 一键部署多节点爬虫程序的更多相关文章

  1. Docker Compose 一键部署LNMP

    Docker Compose 一键部署LNMP 目录结构 [root@localhost ~]# tree compose_lnmp/ compose_lnmp/ ├── docker-compose ...

  2. Docker Compose 一键部署Nginx代理Tomcat集群

    Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...

  3. 开源跨境ERP - 小老板 Docker/Docker Compose一键部署

    先上部署成功后的截图,各个菜单点击均无报错 DockerCompose 包含: 1. 三个mysql5.7数据库 2. redis php会话存储+ memcached 3. 小老板php主程序 do ...

  4. [Docker]compose一键部署nginx

    Docker-compose部署nginx 创建配置文件 mkdir -p /usr/local/docker/nginx cat > /usr/local/docker/nginx/docke ...

  5. Docker Compose一键部署Nginx反向代理Tomcat集群

    目录结构如下 mysql/conf/my.cnf [mysqld] user=mysql port=3306 datadir=/var/lib/mysql socket=/var/lib/mysql/ ...

  6. centos7+docker 安装和部署crawlab分布式爬虫平台,并使用docker-compose管理docker

    1.先决条件centos7+docker最新版本 sudo yum updat 2.配置一下镜像源,创建/etc/docker/daemon.conf文件,在其中输入如下内容 { "regi ...

  7. Docker Compose安装部署Jenkins

    流水线可以让项目发布流程更加清晰,docker可以大大减少Jenkins配置. 1.前言 数据卷挂载到 /var 磁盘目录下,因为该磁盘空间较大,后面需要挂载容器数据卷,以防内存吃紧. 为了可以留存启 ...

  8. Docker compose自动化部署

    安装 https://docs.docker.com/compose/install/#install-compose

  9. idea连接docker实现一键部署

    一.修改配置文件,打开2375端口 [root@microservice ~]# vim /usr/lib/systemd/system/docker.service 在ExecStart=/usr/ ...

随机推荐

  1. 二进制样式的字符串与byte数组互转函数示例

    开发时用到的方法,记录下: /// <summary> /// 测试方法 /// </summary> private void TestFun() { Response.Wr ...

  2. 创建多线程Thread

    创建一个线程: # 方式一from threading import Thread import time def func(n): time.sleep(1) print(n) t = Thread ...

  3. 11.17 flask (1)

    2018-11-17 18:38:42 开始学习进行玩前面项目  开始进军flask flask是一个小型的web框架,,但是有很多第三方组件 最后组装组装就和django一样啦!!!!!!! pyt ...

  4. 2 虚拟机Oracle11.2.0.4服务器端,第三方图形化界面安装步骤

    环境: 虚拟机:winserver 2012r2  数据中心版   64位 物理主机:win7 旗舰版 64位 网络环境:网线连接内网,WiFi外网 一.虚拟机相关设置 包括计算机名,与物理主机的网络 ...

  5. java学习之路--集合基础之List和Set部分

    List 一个接口,它继承于Collection的接口.它代表着有序的队列.里面的元素是有序的,可以重复,因为该集合的体系有索引. List的实现类 ArrayList:底层数据结构为数组数据结构,特 ...

  6. 怎么用js实现jq的removeClass方法

    1.addClass:为指定的dom元素添加样式. 2.removeClass:删除指定dom元素的样式. 3.toggleClass:如果存在(不存在),就删除(添加)一个样式. 4.hasClas ...

  7. vue2.0 --- vuex (一)

    之前做vue项目中没有使用vuex  一直使用vue-router 组件.路由一直的转换,烦不胜烦 今天研究一下vuex vuex是什么: vuex是专门为vue.js应用程序开发的状态管理模式. 解 ...

  8. Luogu 1309 - 瑞士轮 - [归并排序]

    题目链接:https://www.luogu.org/problemnew/show/P1309 题解: 每次比赛前,每个人都是按照分数降序排好的,那么比赛完后,将选手按输赢分成两组,顺序依然按照原顺 ...

  9. maven依赖和传递

    compile (编译范围) compile是默认的范围:如果没有提供一个范围,那该依赖的范围就是编译范围.编译范围依赖在所有的classpath 中可用,同时它们也会被打包. 只有compile 才 ...

  10. stellar.js 视差滚动

    1.引入包 <script src="js/jquery.min.js"></script> <script src="js/jquery. ...