• docker安装消息队列(rabbitmq)及数据库(mongo、mysql)


    解决ipv6 访问问题

    nohup socat TCP6-LISTEN:36001,reuseaddr,fork TCP4:127.0.0.1:36000 > /root/ip6to4.log  2>&1 &
    

    安装docker 华为镜像元

    镜像安装地址

    https://mirrors.huaweicloud.com/
    切换docker 镜像

    mongo 部署使用

    持久化的安装mongo以及可视化

    mongdb 服务器 网络 mynet ip 172.30.10.10
    web控制 网络 mynet ip 172.30.10.11

    docker network create -d bridge --subnet 172.30.10.0/24 mynet
    
    # 启用 ip6 绑定
    docker network create -d bridge --ipv6 --subnet "2001:db8:10::/64" --gateway="2001:db8:10::1" --subnet=172.30.10.0/24 mynet
    

    //可用的 本地 ip 段172.16.0.1~172.31.255.254 172.30.10.0/24

    // 创建 mynet网络
    
    ## //创建保存数据的数据卷
    
    docker volume create --name=mongodata
    
    ## //创建保存客户端连接信息的数据卷
    
    docker volume create --name=mongoclientdata
    
    //启动mongo服务
    docker run -it    --net=mynet  --ip=172.30.10.10  --privileged=true    -v  mongodata:/data/db  -p 27017:27017 --name mongodb1 -d  --restart=always   mongo:4.2.2 
    
    # 启用ip6
    docker run -it    --net=mynet  --ip=172.30.10.10  --privileged=true    -v  mongodata:/data/db  -p 27017:27017 --name mongodb1 -d  --restart=always   mongo:4.2.2  --bind_ip_all
    
    //查看mongo 版本
    docker exec -it mongodb1 mongo --help
    -->output
    MongoDB shell version v4.4.3
    
    //只需要在持久化数据时 创建一次即可
    docker exec -it mongodb1  mongo admin
    
    //创建 超级用户
    db.createUser({
      user: "root",
      pwd:"830698db-aeff-4323-89e9-8c9d03f70ad9",
      roles: [
        { role: "userAdminAnyDatabase", db: "admin" }
    ]});
    
    //启动  数据库可视化 服务
    docker run -d  --net=mynet  --ip=172.30.10.11  -p 36000:3000   -e MONGO_URL="mongodb://172.30.10.10:27017"  -v   mongoclientdata:/data/db  --name=mongoclient1  --restart=always  mongoclient/mongoclient
    
    //连接mongo的url
    mongodb://root:830698db-aeff-4323-89e9-8c9d03f70ad9@172.30.10.10:27017
    
    //查看所有的用户
    db.system.users.find().pretty()
    

    重启持久化数据库以及web访问

    // 启动容器

    docker start  mongodb1 mongoclient1
    

    //设置自动重启

    run --restart=always
    

    // 对已经在运行的容器设置自动重启

    docker update --restart=always   mongodb1 mongoclient1 
    

    设置 非重复 索引

    db.collection.createIndex({"tvid":1},{unique:true})
    
    db.kiki.createIndex({tvid:1},{unique:true})
    
    db.members.createIndex( { "tvid": 1 }, { unique: true } )
    

    mysql 部署使用

    服务信息
    mysql服务器 port 33060
    web控制 网络 port 38000

    部署命令

    // 创建持久化数据卷
    docker volume create --name=mysqldata
    
    -v  mysqldata:/var/lib/mysql
    
    //docker run --name own_mysql -v  mysqldata:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306  -d mysql:8.0.1
    // 部署 mysql5.6
    docker run --name own_mysql -v  mysqldata:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d  --restart=always  mysql:5.6
    
    // 运行 web 管理容器
    docker run --name own_phpmyadmin -d --link own_mysql:db -p 38000:80   --restart=always  phpmyadmin/phpmyadmin
    
    // 对已经在运行的容器设置自动重启
    docker update --restart=always   own_mysql own_phpmyadmin 
    

    本地mysql数据库 web地址

    http://localhost:38000

    数据库地址

    http://localhost:3306

    杂记

    不持久化安装mongo
    github https://github.com/mongodb/mongo

    sudo docker run -it -p 27017:27017 --name mongodb1 -d mongo:4.2.2
    
    docker exec -it mongodb1 mongo admin
    use main
    
    设置 非重复
    db.collection.createIndex({"tvid":1},{unique:true})
    
    db.kiki.createIndex({tvid:1},{unique:true})
    
    db.members.createIndex( { "tvid": 1 }, { unique: true } )
    
    初始化管理员用户并且指定账号密码
    db.createUser({
      user: "root",
      pwd:"123456",  
      roles: [
        { role: "userAdminAnyDatabase", db: "admin" }
    ]});
    
    exit 退出
    
    登录
    docker exec -it mongodb1  mongo admin
    db.auth(“root”,“123456”) 使用root身份登录
    

    创建一个用户 和数据库 exit 退出登录

    docker exec -it 51a5b5e05fe4(换成mongo的容器id) mongo admin 启动
    db.auth(“helele”,“123456”) employ用户登录
    use employ 切换数据库
    
    
    
    不持久安装mongodb client
    可以使用的部署命令
    
    请先部署了 本地mongodb到  localhost:270017
    
    docker run -d --net="host" -e MONGO_URL="mongodb://localhost:27017" -p 36000:3000   --name=mongoclient1 mongoclient/mongoclient
    
    /opt/meteor/dist/bundle/programs/server/dump 容器中导出数据的目录
    
    
    访问地址
    http://127.0.0.1:36000/
    
    链接账户
    mongodb://root:123456@localhost:27017
    
    Docker
    docker pull mongoclient/mongoclient
    To install latest stable release:
    docker pull mongoclient/mongoclient:4.0.0
    Then you can run it as a daemon:
    docker run -d -p 3000:3000 mongoclient/mongoclient
    To set an external mongodb which is required for meteor to work, you can set MONGO_URL environment variable. Otherwise nosqlclient will install mongodb to container and use it.
    To persist your connections and settings simply bind /data/db directory to your local machine as below.
    docker run -d -p 3000:3000 -v :/data/db mongoclient/mongoclient
    
    -e MONGO_URL="mongodb://127.0.0.1:27017"
    
    docker run -d -p 3000:3000 -v /home/lmk/mongo/clientdata:/data/db  --name mongo1  mongoclient/mongoclient:4.0.0
    
    
    docker run -d -p 3000:3000 --name mongoclient1 mongoclient/mongoclient
    
    docker run -e MONGO_URL="mongodb://127.0.0.1:27017" mongoclient/mongoclient
    
    docker run --net="host" -e MONGO_URL="mongodb://localhost:27017" -p 3000:3000  --name=mongoclient1 mongoclient/mongoclient
    

    rabbitmq

    https://hub.docker.com/_/rabb...

    User name to create when RabbitMQ creates a new database from scratch.
    Default:

    default_user = guest

    default_pass Password for the default user.
    Default:

    default_pass = guest

    docker run -d --net host --hostname my-rabbit --name my-rabbit rabbitmq:3
    
    
    # 带有 管理界面
    # 5672  and  15672
    docker run -d  --net host --hostname my-rabbit --name some-rabbit  rabbitmq:3-management
    
    # 从 私有仓库 启动 rabbit
    docker run -d  --net host --hostname my-rabbit --name some-rabbit  one-k.xyz/rabbitmq:3-managem
    

    欢迎大家一起交流呀
    qq群:3638803451
    vx:wxid_sgdelhiwombj12

  • 相关阅读:
    如何将OAK集成到你的系统中?
    线程安全(上)
    List详解
    集合并集交集差集【工具类】
    11.9 leetcode打卡
    所有专栏博客汇总列表
    Java实现常用的排序算法(冒泡排序、选择排序、插入排序、希尔排序)
    从零安装Redis
    山东大学软件学院项目实训-创新实训-网络安全靶场实验平台(十一)
    C++数组空初始化器简介以及对比测试
  • 原文地址:https://www.cnblogs.com/ltgybyb/p/16879051.html