Sign inSign up

flyceek/pyspider

By flyceek

Updated almost 4 years ago

pyspider with python 3.6

Image
0

413

flyceek/pyspider repository overview

prepare db.yml
version: "3.7"

services:
  mongo:
    image: mongo
    restart: always
    ports:
      - "27017:27017"
    networks:
      - pyspider-net0
    volumes:
      - pyspider-mongodb:/data/db
    environment:
      - MONGO_INITDB_ROOT_USERNAME=user
      - MONGO_INITDB_ROOT_PASSWORD=123321

  mongo-express:
    image: mongo-express
    restart: always
    networks:
      - pyspider-net0
    ports:
      - "3333:8081"
    links:
      - "mongo:mongo"
    environment:
      ME_CONFIG_MONGODB_ADMINUSERNAME: user
      ME_CONFIG_MONGODB_ADMINPASSWORD: 123321
      ME_CONFIG_MONGODB_URL: mongodb://user:123321@mongo:27017/
    depends_on:
      - mongo

networks:
  pyspider-net0:
volumes:
  pyspider-mongodb:

prepare mq.yml
version: "3.7"
services:
  rabbitmq:
    image: rabbitmq:management-alpine
    container_name: pyspider_rabbitmq
    environment:
      - RABBITMQ_DEFAULT_USER=user
      - RABBITMQ_DEFAULT_PASS=123321
    networks:
      - pyspider-net0
    ports:
      - "5672:5672"
      - "15672:15672"
networks:
  pyspider-net0:
    external:
      name: pyspider-net0
  default:
    driver: bridge
prepare config.json
{
  "taskdb": "mongodb+taskdb://user:123321@mongodb:27017/taskdb?taskdb=admin",
  "projectdb": "mongodb+projectdb://user:123321@mongodb:27017/projectdb?authSource=admin",
  "resultdb": "mongodb+resultdb://user:123321@mongodb:27017/resultdb?authSource=admin",
  "message_queue": "amqp://user:123321@rabbitmq:5672/%2F",
  "webui": {
    "username": "user",
    "password": "123321",
    "need-auth": true,
    "scheduler-rpc": "http://scheduler:23333",
    "fetcher-rpc": "http://fetcher:24444"
  }
}
prepare main.yml
version: "3.7"
services:
  phantomjs:
    image: flyceek/pyspider:latest
    container_name: pyspider_phantomjs
    networks:
      - pyspider-net0
    volumes:
      - ./config.json:/opt/pyspider/config.json
    command: -c config.json phantomjs
    restart: unless-stopped
  result:
    image: flyceek/pyspider:latest
    container_name: pyspider_result
    networks:
      - pyspider-net0
    volumes:
      - ./config.json:/opt/pyspider/config.json
    command: -c config.json result_worker
    restart: unless-stopped
  processor:
    image: flyceek/pyspider:latest
    container_name: pyspider_processor
    networks:
      - pyspider-net0
    volumes:
      - ./config.json:/opt/pyspider/config.json
    command: -c config.json processor
    restart: unless-stopped
  fetcher:
    image: flyceek/pyspider:latest
    container_name: pyspider_fetcher
    networks:
      - pyspider-net0
    volumes:
      - ./config.json:/opt/pyspider/config.json
    command : -c config.json fetcher
    restart: unless-stopped
  scheduler:
    image: flyceek/pyspider:latest
    container_name: pyspider_scheduler
    networks:
      - pyspider-net0
    volumes:
      - ./config.json:/opt/pyspider/config.json
    command: -c config.json scheduler
    restart: unless-stopped
  webui:
    image: flyceek/pyspider:latest
    container_name: pyspider_webui
    ports:
      - "5050:5000"
    networks:
      - pyspider-net0
    volumes:
      - ./config.json:/opt/pyspider/config.json
    command: -c config.json webui
    restart: unless-stopped

networks:
  pyspider-net0:
    external:
      name: pyspider-net0
  default:
    driver: bridge
run
docker network rm pyspider-net0
docker network create --driver bridge pyspider-net0 
docker-compose -f db.yml up -d
docker-compose -f mq.yml up -d
docker-compose -f main.yml up -d
try it
http://yourip:5050
END

Tag summary

Content type

Image

Digest

sha256:a2ca1cf9c

Size

665 MB

Last updated

almost 4 years ago

docker pull flyceek/pyspider