基于ADNC的docker-compose

  最近在琢磨net的微服务架构,市场上并没有像Java、golang那样比较好的架构和社区,最近发现了ADNC这个架构,官网主页教程很详细,但是大家每次运行的时候一般是记不住docker中那么多的命令的,所以我整合了一下,发在下面仅供参考;

  附官网:.NET微服务开发框架 - .NET微服务框架

  此文件不挑系统,适用于三大平台,但前提是要安装好docker和docker-compose,关于这俩安装方法这里不再赘述了;

  新建netadnc文件夹,在下面新建docker-compose.yml文件,将内容给拷贝进去,关于其中的映射文件夹建议提前新建好,其中几个映射的文件我也会放在下面;

docker-compose.yml

  第一个这个是docker-compose.yml,要注意的是我用了共同的网络persimmon-net;如果运行提示没有该网络,可以执行一下以下命令;

docker network create -d bridge persimmon-net

version: '3.0'
services:
    mariadb:
      restart: always
      image: mariadb:10.5.8
      container_name: mariadb
      volumes:
        - ./mariadb/logs:/var/log/mysql
        - ./mariadb/data:/var/lib/mysql
        - ./mariadb/conf/my.cnf:/etc/mysql/my.cnf
      environment:
        - "MYSQL_ROOT_PASSWORD=Mariadb21yu."
        - "TZ=Asia/Shanghai"
      ports:
      # 使用宿主机的13379端口映射到容器的3306端口
      # 宿主机:容器
        - 13308:3306
      networks:
        - persimmon_net
    redis:
      image: redislabs/rebloom:2.2.5
      container_name: redis
      restart: always # 总是重启
      command: redis-server --requirepass Redis21yu.
      ports:
        - "13379:6379"
      volumes:
        - ./redis/conf/redis.conf:/etc/redis/redis.conf
        - ./redis/data:/data
      networks:
        - persimmon_net
    rabbitmq:
      image: rabbitmq:3.8.9-management
      container_name: rabbitmq
      restart: always # 总是重启
      ports:
        - "13572:5672"
        - "18578:15672"
      environment:
        - "RABBITMQ_DEFAULT_USER=admin"
        - "RABBITMQ_DEFAULT_PASS=Rabbitmq21yu."
      networks:
        - persimmon_net
    mongo:
      image: mongo:4.4.3
      container_name: mongo
      restart: always # 总是重启 
      ports:
        - "13017:27017"
      environment:
        - "MONGO_INITDB_ROOT_USERNAME=admin"
        - "MONGO_INITDB_ROOT_PASSWORD=Mongo21yu."
        - "TZ=Asia/Shanghai"
      volumes:
        - ./mongo/data:/data/db
        - ./mongo/backup:/data/backup
networks:
  persimmon_net:
    external: true

 my.cnf

         第二个映射的conf是mysql的;

[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
character-set-client-handshake=FALSE
collation-server=utf8_unicode_ci
init_connect='SET NAMES utf8'
log-bin=mysql-bin # 开启 binlog
binlog-format=ROW # 选择 ROW 模式
server_id=1 # 配置 MySQL replaction 需要定义,不要和 canal 的 slaveId 重复
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

redis.conf 

        第三个映射是redis的conf,这个官网有链接;

https://raw.githubusercontent.com/AlphaYu/adnc/master/doc/redis/redis.conf

 运行范例

         以上是运行需要的内容,下面按照官网mongo做个范例···

1 、进入到该文件夹中,执行运行命令

docker-compose up -d

等待执行完成出现以下图例

2、进入mongo 容器中,执行官网所述命令

docker exec -it mongo mongo admin

use admin

db.auth('admin','Mongo21yu.')

use logs_dev

db.createCollection('test')

db.createUser({user:'alpha',pwd:'Mongo21yu.',roles:[{role:'readWrite',db:'logs_dev'}]})

成功会出现以下图例

  • 21
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值