一、通过DockerHub拉镜像,版本查看:https://github.com/nacos-group/nacos-docker

  1. //稳定版,有权限
  2. docker pull nacos/nacos-server:1.3.1

二、数据库初始化

nacos初始化sql,需要先创建nacos数据库后,然后执行下面的sql

https://github.com/alibaba/nacos/blob/master/config/src/main/resources/META-INF/nacos-db.sql

  1. /******************************************/
  2. /* 数据库全名 = nacos_config */
  3. /* 表名称 = config_info */
  4. /******************************************/
  5. CREATE TABLE `config_info` (
  6. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  7. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
  8. `group_id` varchar(255) DEFAULT NULL,
  9. `content` longtext NOT NULL COMMENT 'content',
  10. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
  11. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
  12. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
  13. `src_user` text COMMENT 'source user',
  14. `src_ip` varchar(20) DEFAULT NULL COMMENT 'source ip',
  15. `app_name` varchar(128) DEFAULT NULL,
  16. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
  17. `c_desc` varchar(256) DEFAULT NULL,
  18. `c_use` varchar(64) DEFAULT NULL,
  19. `effect` varchar(64) DEFAULT NULL,
  20. `type` varchar(64) DEFAULT NULL,
  21. `c_schema` text,
  22. PRIMARY KEY (`id`),
  23. UNIQUE KEY `uk_configinfo_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
  24. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info';
  25. /******************************************/
  26. /* 数据库全名 = nacos_config */
  27. /* 表名称 = config_info_aggr */
  28. /******************************************/
  29. CREATE TABLE `config_info_aggr` (
  30. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  31. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
  32. `group_id` varchar(255) NOT NULL COMMENT 'group_id',
  33. `datum_id` varchar(255) NOT NULL COMMENT 'datum_id',
  34. `content` longtext NOT NULL COMMENT '内容',
  35. `gmt_modified` datetime NOT NULL COMMENT '修改时间',
  36. `app_name` varchar(128) DEFAULT NULL,
  37. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
  38. PRIMARY KEY (`id`),
  39. UNIQUE KEY `uk_configinfoaggr_datagrouptenantdatum` (`data_id`,`group_id`,`tenant_id`,`datum_id`)
  40. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='增加租户字段';
  41. /******************************************/
  42. /* 数据库全名 = nacos_config */
  43. /* 表名称 = config_info_beta */
  44. /******************************************/
  45. CREATE TABLE `config_info_beta` (
  46. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  47. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
  48. `group_id` varchar(128) NOT NULL COMMENT 'group_id',
  49. `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
  50. `content` longtext NOT NULL COMMENT 'content',
  51. `beta_ips` varchar(1024) DEFAULT NULL COMMENT 'betaIps',
  52. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
  53. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
  54. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
  55. `src_user` text COMMENT 'source user',
  56. `src_ip` varchar(20) DEFAULT NULL COMMENT 'source ip',
  57. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
  58. PRIMARY KEY (`id`),
  59. UNIQUE KEY `uk_configinfobeta_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
  60. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_beta';
  61. /******************************************/
  62. /* 数据库全名 = nacos_config */
  63. /* 表名称 = config_info_tag */
  64. /******************************************/
  65. CREATE TABLE `config_info_tag` (
  66. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  67. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
  68. `group_id` varchar(128) NOT NULL COMMENT 'group_id',
  69. `tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
  70. `tag_id` varchar(128) NOT NULL COMMENT 'tag_id',
  71. `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
  72. `content` longtext NOT NULL COMMENT 'content',
  73. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
  74. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
  75. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
  76. `src_user` text COMMENT 'source user',
  77. `src_ip` varchar(20) DEFAULT NULL COMMENT 'source ip',
  78. PRIMARY KEY (`id`),
  79. UNIQUE KEY `uk_configinfotag_datagrouptenanttag` (`data_id`,`group_id`,`tenant_id`,`tag_id`)
  80. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_tag';
  81. /******************************************/
  82. /* 数据库全名 = nacos_config */
  83. /* 表名称 = config_tags_relation */
  84. /******************************************/
  85. CREATE TABLE `config_tags_relation` (
  86. `id` bigint(20) NOT NULL COMMENT 'id',
  87. `tag_name` varchar(128) NOT NULL COMMENT 'tag_name',
  88. `tag_type` varchar(64) DEFAULT NULL COMMENT 'tag_type',
  89. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
  90. `group_id` varchar(128) NOT NULL COMMENT 'group_id',
  91. `tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
  92. `nid` bigint(20) NOT NULL AUTO_INCREMENT,
  93. PRIMARY KEY (`nid`),
  94. UNIQUE KEY `uk_configtagrelation_configidtag` (`id`,`tag_name`,`tag_type`),
  95. KEY `idx_tenant_id` (`tenant_id`)
  96. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_tag_relation';
  97. /******************************************/
  98. /* 数据库全名 = nacos_config */
  99. /* 表名称 = group_capacity */
  100. /******************************************/
  101. CREATE TABLE `group_capacity` (
  102. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  103. `group_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'Group ID,空字符表示整个集群',
  104. `quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '配额,0表示使用默认值',
  105. `usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用量',
  106. `max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个配置大小上限,单位为字节,0表示使用默认值',
  107. `max_aggr_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '聚合子配置最大个数,,0表示使用默认值',
  108. `max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值',
  109. `max_history_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '最大变更历史数量',
  110. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
  111. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
  112. PRIMARY KEY (`id`),
  113. UNIQUE KEY `uk_group_id` (`group_id`)
  114. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='集群、各Group容量信息表';
  115. /******************************************/
  116. /* 数据库全名 = nacos_config */
  117. /* 表名称 = his_config_info */
  118. /******************************************/
  119. CREATE TABLE `his_config_info` (
  120. `id` bigint(64) unsigned NOT NULL,
  121. `nid` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  122. `data_id` varchar(255) NOT NULL,
  123. `group_id` varchar(128) NOT NULL,
  124. `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
  125. `content` longtext NOT NULL,
  126. `md5` varchar(32) DEFAULT NULL,
  127. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00',
  128. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00',
  129. `src_user` text,
  130. `src_ip` varchar(20) DEFAULT NULL,
  131. `op_type` char(10) DEFAULT NULL,
  132. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
  133. PRIMARY KEY (`nid`),
  134. KEY `idx_gmt_create` (`gmt_create`),
  135. KEY `idx_gmt_modified` (`gmt_modified`),
  136. KEY `idx_did` (`data_id`)
  137. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='多租户改造';
  138. /******************************************/
  139. /* 数据库全名 = nacos_config */
  140. /* 表名称 = tenant_capacity */
  141. /******************************************/
  142. CREATE TABLE `tenant_capacity` (
  143. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  144. `tenant_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'Tenant ID',
  145. `quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '配额,0表示使用默认值',
  146. `usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用量',
  147. `max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个配置大小上限,单位为字节,0表示使用默认值',
  148. `max_aggr_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '聚合子配置最大个数',
  149. `max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值',
  150. `max_history_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '最大变更历史数量',
  151. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
  152. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
  153. PRIMARY KEY (`id`),
  154. UNIQUE KEY `uk_tenant_id` (`tenant_id`)
  155. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='租户容量信息表';
  156. CREATE TABLE `tenant_info` (
  157. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  158. `kp` varchar(128) NOT NULL COMMENT 'kp',
  159. `tenant_id` varchar(128) default '' COMMENT 'tenant_id',
  160. `tenant_name` varchar(128) default '' COMMENT 'tenant_name',
  161. `tenant_desc` varchar(256) DEFAULT NULL COMMENT 'tenant_desc',
  162. `create_source` varchar(32) DEFAULT NULL COMMENT 'create_source',
  163. `gmt_create` bigint(20) NOT NULL COMMENT '创建时间',
  164. `gmt_modified` bigint(20) NOT NULL COMMENT '修改时间',
  165. PRIMARY KEY (`id`),
  166. UNIQUE KEY `uk_tenant_info_kptenantid` (`kp`,`tenant_id`),
  167. KEY `idx_tenant_id` (`tenant_id`)
  168. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='tenant_info';
  169. CREATE TABLE users (
  170. username varchar(50) NOT NULL PRIMARY KEY,
  171. password varchar(500) NOT NULL,
  172. enabled boolean NOT NULL
  173. );
  174. CREATE TABLE roles (
  175. username varchar(50) NOT NULL,
  176. role varchar(50) NOT NULL
  177. );
  178. INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);
  179. INSERT INTO roles (username, role) VALUES ('nacos', 'ROLE_ADMIN');

三、运行Nacos

需注意:

  • 本地通过--link连接本地MySQL
  • 通过-e TIME_ZONE='Asia/Shanghai' 指定时区
  1. docker run -d \
  2. --link mysql8.0:mysql8.0 \
  3. -e PREFER_HOST_MODE=ip \
  4. -e MODE=standalone \
  5. -e SPRING_DATASOURCE_PLATFORM=mysql \
  6. -e MYSQL_SERVICE_HOST=mysql8.0 \
  7. -e MYSQL_SERVICE_PORT=3306 \
  8. -e MYSQL_SERVICE_USER=root \
  9. -e MYSQL_SERVICE_PASSWORD=123456 \
  10. -e MYSQL_SERVICE_DB_NAME=nacos \
  11. -e TIME_ZONE='Asia/Shanghai' \
  12. -p 8848:8848 \
  13. --name nacos1.3.1 \
  14. --restart=always \
  15. nacos/nacos-server:1.3.1

四、访问控制台

Docker安装Nacos动态服务发现、配置和服务管理平台的更多相关文章

  1. Spring Cloud官方文档中文版-服务发现:Eureka服务端

    官方文档地址为:http://cloud.spring.io/spring-cloud-static/Dalston.SR3/#spring-cloud-eureka-server 文中例子我做了一些 ...

  2. centos7用docker安装mysql5.7.24后配置主从

    1)使用docker安装完成mysql5.7.24,我规划的是3台: 192.168.0.170(Master) 192.168.0.169(Slave) 192.168.0.168(Slave) 2 ...

  3. airflow安装rest api插件发现airflow webserver服务不能启动的解决办法

    安装插件airflow-rest-api 1)获取 wget https://github.com/teamclairvoyant/airflow-rest-api-plugin/archive/ma ...

  4. 远程控制服务:配置sshd服务,密钥验证登陆

    配置sshd服务 1.概述: SSH(Secure Shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理 Linux 系统的首选方式.在此之前,一般使用 FTP 或 Telnet 来 ...

  5. docker安装nacos

    nacos 最近尝试着将项目由springcloud + netflix重构为springcloud alibaba,需要安装一些组件,感觉安装太麻烦,版便尝试着使用docker来部署,发现挺方便,记 ...

  6. 使用Docker安装mysql,挂载外部配置和数据

    .挂载外部配置和数据安装 mkdir /opt mkdir /opt/mysql mkdir /opt/mysql/conf.d mkdir /opt/mysql/data/ 创建my.cnf配置文件 ...

  7. 【Docker】:使用docker安装redis,挂载外部配置和数据

    普通安装 1.拉取镜像,redis:4.0 docker pull redis:4.0 2.创建redis容器名"redistest1",并开启持久化 docker run -d ...

  8. 【Docker】:使用docker安装mysql,挂载外部配置和数据

    普通安装 1.下载镜像,mysql 5.7 docker pull mysql:5.7 2.创建mysql容器,并后台启动 docker run -d -p 3306:3306 -e MYSQL_US ...

  9. 支持动态调频_配置AXP228电源管理_4核8核兼容设计_iTOP-4418/6818开发板

    iTOP-4418/6818开发板 支持动态调频,AXP228电源管理, 系统支持:Android4.4/5.1.1.Linux3.4.39.QT2.2/4.7/5.7.Ubuntu12.04 内存: ...

随机推荐

  1. 视频+图文串讲:MySQL 行锁、间隙锁、Next-Key-Lock、以及实现记录存在的话就更新,如果记录不存在的话就插入如何保证并发安全

    导读 Hi,大家好!我是白日梦!本文是MySQL专题的第 27 篇. 下文还是白日梦以自导自演的方式,围绕"如何实现记录存在的话就更新,如果记录不存在的话就插入."展开本话题.看看 ...

  2. Python3+pygame中国象棋 代码完整 非常好 有效果演示

    这几天看到抖音上有个妹子下象棋超级猛,我的中国象棋也差不到哪去啊,走 做一个.... 一.运行效果 二.代码 下面的代码用到图片素材(images文件夹),下载地址如下:https://www.itp ...

  3. 如何在 C# 中使用 ArrayPool 和 MemoryPool

    对资源的可复用是提升应用程序性能的一个非常重要的手段,比如本篇要分享的 ArrayPool 和 MemoryPool,它们就有效的减少了内存使用和对GC的压力,从而提升应用程序性能. 什么是 Arra ...

  4. (Java基础--Spring阶段)常见面试题题目及解析整理(2021.03.12)

    题目整理 Java基础进阶阶段 基础概念类 1.JDK1.8新特性? 2.面向对象和面向过程的区别? 3.什么是值传递和引用传递? 4.什么是不可变对象? 5.讲讲类的实例化顺序? 6.java 创建 ...

  5. RabbitMQ镜像队列集群搭建、与SpringBoot整合

    镜像模式 集群模式非常经典的就是Mirror镜像模式,保证100%数据不丢失,在实际工作中也是用的最多的,并且实现集群比较的简单. Mirror镜像队列,目的是为了保证 RabbitMQ 数据的高可靠 ...

  6. HYSBZ 1734 二分

    传送门 题面: 农夫 John 建造了一座很长的畜栏,它包括N (2 <= N <= 100,000)个隔间,这些小隔间依次编号为x1,...,xN (0 <= xi <= 1 ...

  7. python两个字典相加

    x = {"a":1,"b":2} 2 y = {"c":3} 3 from collections import Counter 4 X, ...

  8. C# 获取网页信息

    获取网页源码 ///通过HttpWebResponse public string GetUrlHtml(string url) { string strHtml = string.Empty; Ht ...

  9. 运维小姐姐说这篇Consul集群和ACL配置超给力(保姆级)

    前言 上一篇简单介绍了Consul,并使用开发模式(dev)进行流程演示,但在实际开发中需要考虑Consul的高可用和操作安全性,所以接着来聊聊集群和ACL的相关配置,涉及到的命令会在环境搭建过程中详 ...

  10. python基础之流程控制(1)

    一.分支结构:if 判断 1.什么要有if 判断语句? 让计算机可以像人一样根据条件进行判断,并根据判断结果执行相应的流程. 2.基本结构 单分支结构 # 单分支 if 条件1: 代码1 代码2 代码 ...