美文网首页
docker-compose收集

docker-compose收集

作者: 快去学习不然怎么去看aimer | 来源:发表于2019-10-23 16:15 被阅读0次

jenkins+客户端

  jenkins:
    restart: always
    image: centos7-jenkins-plugins
    container_name: docker_jenkins
#    volumes:
#      - "./jenkins_home/:/var/lib/jenkins/"
    ports:
      - '222:22'
      - '8091:8080'
    privileged: true
    command: /usr/sbin/init
    networks:
      - qfedu-gp
  web:
    restart: always
    image: centos7-python3.7
    container_name: docker_web
    volumes:
      - "./web/home/:/home/"
    ports:
      - '8090:80'
    networks:
      - qfedu-gp
    privileged: true
    command: /usr/sbin/init
networks:
  qfedu-gp:

gitlab

version: '3'
services:
    gitlab:
      image: 'twang2218/gitlab-ce-zh'
      restart: always
      container_name: 'gitlab'
      privileged: true
      hostname: 'gitlab'
      environment:
        TZ: 'Asia/Shanghai'
        GITLAB_OMNIBUS_CONFIG: |
          external_url 'http://10.0.122.147'
          gitlab_rails['time_zone'] = 'Asia/Shanghai'
          gitlab_rails['smtp_enable'] = true
          gitlab_rails['smtp_address'] = "smtp.163.com"
          gitlab_rails['smtp_port'] = 465
          gitlab_rails['smtp_user_name'] = "songrou1@163.com"
          gitlab_rails['smtp_password'] = "rourou11"
          gitlab_rails['smtp_domain'] = "163.com"
          gitlab_rails['smtp_authentication'] = "login"
          gitlab_rails['smtp_enable_starttls_auto'] = true
          gitlab_rails['smtp_tls'] = true
          gitlab_rails['gitlab_email_from'] = 'songrou1@163.com'
          gitlab_rails['gitlab_shell_ssh_port'] = 220
          unicorn['port'] = 8888
          nginx['listen_port'] = 80
      ports:
        - '9000:80'
        - '443:443'
        - '220:22'
      volumes:
        - /data/gitlab/config:/etc/gitlab
        - /data/gitlab/data:/var/opt/gitlab
        - /data/gitlab/logs:/var/log/gitlab

负载均衡关联mysql

version: '2'
services:
   db:
     image: mysql:5.7
     volumes:
       - /data/db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress
   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     volumes:
       - /data/web_data:/var/www/html
     ports:
       - "80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress

django+rabbitmq+redis+mysql+nginx+gitlab+jenkin -----> CI/CD

version: "3.7"
services:
  mysqlserver:
    image: mysql/mysql-server:5.7
    restart: always
    tty: true
    container_name: composemysql
    volumes:
      - type: bind
        source: ./docker-cmdb/mysql/init.sql
        target: /docker-entrypoint-initdb.d/init.sql
      # - type: bind
      #   source: ./docker-cmdb/mysql/confile/my.cnf
      #   target: /etc/my.cnf
    environment:
      MYSQL_ROOT_PASSWORD: QFedu123!
    expose:
      - "3306"
    networks:
      - jumpserver-test

  redisserver:
    image: redis:alpine
    restart: always 
    container_name: composeredis
    expose:
      - "6379" 
    networks: 
      - jumpserver-test

  rabbitmqserver: 
    build: ./docker-cmdb/rabbitmq
    # build ./rabbitemq
    restart: always
    container_name: composerabbitmq
    expose:
      - "8081"
    networks: 
      - jumpserver-test 
   
  nginxserver:
    build: ./docker-cmdb/nginx/
    #build: ./nginx
    restart: always
    container_name: composenginx
    ports: 
      - "13141:80"
    volumes:
      - type: bind
        source: ./docker-cmdb/nginx/confile/default.conf
        target: /etc/nginx/conf.d/default.conf
      - type: bind
        source: ./docker-cmdb/nginx/allstatics/allstatic
        target: /root/
    networks:
      - jumpserver-test
    depends_on:
      - cmdb

  cmdb:
    build: ./docker-cmdb/cmdb
    restart: always
    container_name: composecmdb
    tty: true
    command: 
      - /bin/bash
      - -c
      - |  
        python3 /opt/auto_cmdb/manage.py makemigrations 
        python3 /opt/auto_cmdb/manage.py migrate 
        uwsgi --ini /opt/auto_cmdb/conf/auto_cmdb.ini
    expose:
      - "80"
    networks:
      - jumpserver-test
    depends_on:
      - mysqlserver
      - redisserver
      - rabbitmqserver

  gitlab:
    image: gitlabcicd:latest
    restart: always
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://10.0.122.148:80'
        unicorn['worker_timeout'] = 60
        unicorn['worker_processes'] = 3 # worker进程数
        unicorn['worker_memory_limit_min'] = "200 * 1 << 20" # worker最小内存
        unicorn['worker_memory_limit_max'] = "300 * 1 << 20"  # worker最大内存
        sidekiq['concurrency'] = 10
        postgresql['shared_buffers'] = "128MB"
        postgresql['max_worker_processes'] = 8
    networks:
      - jumpserver-test
    ports:
      - '9280:80'
    volumes:
      - './docker-cmdb/gitlab/config:/etc/gitlab'
      - './docker-cmdb/gitlab/logs:/var/log/gitlab'
      - './docker-cmdb/gitlab/data:/var/opt/gitlab'

  jenkins:
    image: jenkinscicd:latest
    restart: always
    privileged: true
    user: root
    volumes:
      - type: bind
        source: ./docker-cmdb/jenkins/jenkins_home
        target: /var/jenkins_home
      - type: bind
        source: /var/run/docker.sock
        target: /var/run/docker.sock
        read_only: "yes"
    networks:
      - jumpserver-test
    ports:
      - "9980:8080"

networks:
  jumpserver-test:

filebeat+logstash+elasticsearch+kibana

version: "3.2"
services: 
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.4.2
    networks:
      - "elk-net"
    container_name: elasticsearch
    ports:
      - "9200:9200"
    environment:
      - discovery.type=single-node
      - bootstrap.memory_lock=true

  filebeat: 
    container_name: filebeat
    image: docker.elastic.co/beats/filebeat:7.4.2
    networks:
      - "elk-net"
    volumes:
      - type: bind
        source: "./Filebeat/app.log"
        target: "/app.log"
      - type: bind
        source: "./Filebeat/filebeat.yml"
        target: "/usr/share/filebeat/filebeat.yml" 
    depends_on:
      - "logstash"

  logstash:
    container_name: logstash
    image: docker.elastic.co/logstash/logstash:7.4.2 
    volumes:
      - type: bind
        source: "./logstash/logstash_stdout.conf"
        target: "/usr/share/logstash/pipeline/logstash.conf" 
    networks:
      - "elk-net"
    depends_on:
      - "elasticsearch"
      
  kibana:
    container_name: kibana
    image: docker.elastic.co/kibana/kibana:7.4.2
    networks:
      - "elk-net"
    ports:
      - "5601:5601"
    depends_on:
      - "elasticsearch"  
  
networks:
  elk-net:

相关文章

网友评论

      本文标题:docker-compose收集

      本文链接:https://www.haomeiwen.com/subject/yuekvctx.html