Skip to content

Latest commit

 

History

History
295 lines (286 loc) · 7.7 KB

数据平台.md

File metadata and controls

295 lines (286 loc) · 7.7 KB

Install dc

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

sudo mkdir /etc/mysql.d/init-sql /data/mysql -p
sudo touch /etc/mysql.d/docker-compose.yaml
sudo wget -P /etc/mysql.d https://raw.fastgit.org/mmh-xu/docker-compose/master/Yearning/docker/etc/mysql/my.cnf
sudo wget -P /etc/mysql.d/init-sql https://raw.fastgit.org/mmh-xu/docker-compose/master/Yearning/init-sql/install.sql
sudo chmod -R 777 /data/mysql /etc/mysql.d
sudo cat > /etc/mysql.d/docker-compose.yaml <<EOF
version: '3'
services:
  mysql:
    image: mysql:5.7
    volumes:
      - /etc/mysql.d/:/etc/mysql/conf.d/
      - /etc/mysql.d/init-sql/:/docker-entrypoint-initdb.d/
      - /data/mysql:/var/lib/mysql/
    restart: always
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: gmt
      MYSQL_DATABASE: yearning
      MYSQL_USER: gmt
      MYSQL_PASSWORD: gmt
    networks:
      - dc
  soar-web:
    image: becivells/soar-web
    container_name: soar-web
    restart: always
    ports:
      - 5077:5077
    networks:
      - dc
  yearning:
    image: zhangsean/yearning:v2.3.2
    container_name: yearning
    restart: always
    depends_on: 
      - mysql
    ports:
      - 5080:8000
    environment:
      HOST: localhost
      MYSQL_PASSWORD: gmt
      MYSQL_USER: gmt
      MYSQL_DB: yearning
      TZ: "Asia/Shanghai"
      MYSQL_ADDR: mysql
    networks:
      - dc
networks:
  dc:
    driver: bridge
EOF
sudo docker-compose -f /etc/mysql.d/docker-compose.yaml up -d

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

sudo mkdir /etc/mongo.d /data/mongo/db /data/mongo/log -p
sudo touch /etc/mongo.d/docker-compose.yaml
sudo chmod -R 777 /data/mongo /etc/mongo.d
sudo cat > /etc/mongo.d/docker-compose.yaml <<EOF
version: '3'
services:
  mongo:
    image: mongo:4.2
    container_name: mongo
    ports:
      - 27017:27017
    restart: always
    tty: true
    environment:
      TZ: Asia/Shanghai
      MONGO_INITDB_ROOT_USERNAME: admin
      MONGO_INITDB_ROOT_PASSWORD: admin123abc123
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /data/mongo/db:/data/db
    networks:
      - dc
  mongo-express:
    image: mongo-express
    container_name: mongo-express
    restart: always
    links:
      - mongo
    depends_on:
      - mongo
    ports:
      - 27018:8081
    environment:
      ME_CONFIG_OPTIONS_EDITORTHEME: 3024-night
      ME_CONFIG_MONGODB_SERVER: mongo
      ME_CONFIG_MONGODB_ADMINUSERNAME: admin
      ME_CONFIG_MONGODB_AUTH_DATABASE: admin
      ME_CONFIG_MONGODB_ADMINPASSWORD: admin123abc123
    networks:
      - dc
networks:
  dc:
    driver: bridge
EOF
sudo docker-compose -f /etc/mongo.d/docker-compose.yaml up -d
sudo docker exec -it  fc1d260b294f bash 
mongo
use admin
db.createUser({
  user: "admin",
  pwd: "admin123abc123",
  roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})
db.auth('admin','admin123abc123')
exit
mongo
use admin
db.auth('admin','admin123abc123')
use graylog
db.createUser({
  user: "graylog",
  pwd: "graylog123abc123",
  roles: [ { role: "readWrite", db: "graylog" } ]
})
db.auth('graylog','graylog123abc123')
exit

Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

sudo mkdir /etc/redis.d /data/redis/db /data/redis/log -p
sudo touch /etc/redis.d/docker-compose.yaml /etc/redis.d/redis-cluster.tmpl
sudo chmod -R 777 /data/redis /etc/redis.d

for port in `seq 7001 7006`; do \
sudo mkdir -p /etc/redis.d/${port}
sudo touch /etc/redis.d/${port}/redis.conf
sudo cat > /etc/redis.d/${port}/redis.conf <<EOF
port ${port}
requirepass 123456
masterauth 123456
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 192.168.202.128
cluster-announce-port ${port}
cluster-announce-bus-port 1${port}
appendonly yes
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

logfile /data/redis.log
EOF
sudo mkdir -p /data/redis/${port}/data
sudo chmod -R 777 /etc/redis.d/${port} /data/redis/${port}/data;
done

sudo cat > /etc/redis.d/docker-compose.yaml <<EOF
version: '3'
services:
  redis7001:
    image: redis:6
    container_name: redis7001
    restart: always
    command:
      ["redis-server", "/usr/local/etc/redis/redis.conf"]
    volumes:
      - /etc/redis.d/7001/redis.conf:/usr/local/etc/redis/redis.conf
      - /data/redis/7001/data:/data
    ports:
      - 7001:7001
      - 17001:17001
    environment:
      - TZ=Asia/Shanghai
    logging:
      options:
        max-size: '100m'
        max-file: '10'
    networks:
    - dc
  redis7002:
    image: redis:6
    container_name: redis7002
    restart: always
    command:
      ["redis-server", "/usr/local/etc/redis/redis.conf"]
    volumes:
      - /etc/redis.d/7002/redis.conf:/usr/local/etc/redis/redis.conf
      - /data/redis/7002/data:/data
    ports:
      - 7002:7002
      - 17002:17002
    environment:
      - TZ=Asia/Shanghai
    logging:
      options:
        max-size: '100m'
        max-file: '10'
    networks:
    - dc
  redis7003:
    image: redis:6
    container_name: redis7003
    restart: always
    command:
      ["redis-server", "/usr/local/etc/redis/redis.conf"]
    volumes:
      - /etc/redis.d/7003/redis.conf:/usr/local/etc/redis/redis.conf
      - /data/redis/7003/data:/data
    ports:
      - 7003:7003
      - 17003:17003
    environment:
      - TZ=Asia/Shanghai
    logging:
      options:
        max-size: '100m'
        max-file: '10'
    networks:
    - dc
  redis7004:
    image: redis:6
    container_name: redis7004
    restart: always
    command:
      ["redis-server", "/usr/local/etc/redis/redis.conf"]
    volumes:
      - /etc/redis.d/7004/redis.conf:/usr/local/etc/redis/redis.conf
      - /data/redis/7004/data:/data
    ports:
      - 7004:7004
      - 17004:17004
    environment:
      - TZ=Asia/Shanghai
    logging:
      options:
        max-size: '100m'
        max-file: '10'
    networks:
    - dc
  redis7005:
    image: redis:6
    container_name: redis7005
    restart: always
    command:
      ["redis-server", "/usr/local/etc/redis/redis.conf"]
    volumes:
      - /etc/redis.d/7005/redis.conf:/usr/local/etc/redis/redis.conf
      - /data/redis/7005/data:/data
    ports:
      - 7005:7005
      - 17005:17005
    environment:
      - TZ=Asia/Shanghai
    logging:
      options:
        max-size: '100m'
        max-file: '10'
    networks:
    - dc
  redis7006:
    image: redis:6
    container_name: redis7006
    restart: always
    command:
      ["redis-server", "/usr/local/etc/redis/redis.conf"]
    volumes:
      - /etc/redis.d/7006/redis.conf:/usr/local/etc/redis/redis.conf
      - /data/redis/7006/data:/data
    ports:
      - 7006:7006
      - 17006:17006
    environment:
      - TZ=Asia/Shanghai
    logging:
      options:
        max-size: '100m'
        max-file: '10'
    networks:
    - dc
networks:
  dc:
    driver: bridge
EOF
sudo docker-compose -f /etc/redis.d/docker-compose.yaml up -d
sudo docker exec -it redis7001 redis-cli -p 7001 -a 123456 --cluster create 192.168.202.128:7001 192.168.202.128:7002 192.168.202.128:7003 192.168.202.128:7004 192.168.202.128:7005 192.168.202.128:7006 --cluster-replicas 1