docker 安装 nacos

Posted binz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker 安装 nacos相关的知识,希望对你有一定的参考价值。

拉镜像

docker pull nacos/nacos-server

创建数据目录

mkdir /data/nacos/logs

 

运行镜像

docker run --restart always --env MODE=standalone --name binznacos -v /data/nacos/logs:/data/nacos/logs -d -p 8848:8848  -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_MASTER_SERVICE_HOST=192.168.1.3 -e MYSQL_MASTER_SERVICE_PORT=3306 -e MYSQL_MASTER_SERVICE_USER=root -e MYSQL_MASTER_SERVICE_PASSWORD=root -e MYSQL_MASTER_SERVICE_DB_NAME=nacos -e MYSQL_SLAVE_SERVICE_HOST=192.168.1.2 -e MYSQL_SLAVE_SERVICE_PORT=3306 nacos/nacos-server

 

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

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

技术图片
/******************************************/
/*   数据库全名 = nacos_config   */
/*   表名称 = config_info   */
/******************************************/
CREATE TABLE `config_info` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT id,
  `data_id` varchar(255) NOT NULL COMMENT data_id,
  `group_id` varchar(255) DEFAULT NULL,
  `content` longtext NOT NULL COMMENT content,
  `md5` varchar(32) DEFAULT NULL COMMENT md5,
  `gmt_create` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 创建时间,
  `gmt_modified` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 修改时间,
  `src_user` text COMMENT source user,
  `src_ip` varchar(20) DEFAULT NULL COMMENT source ip,
  `app_name` varchar(128) DEFAULT NULL,
  `tenant_id` varchar(128) DEFAULT ‘‘ COMMENT 租户字段,
  `c_desc` varchar(256) DEFAULT NULL,
  `c_use` varchar(64) DEFAULT NULL,
  `effect` varchar(64) DEFAULT NULL,
  `type` varchar(64) DEFAULT NULL,
  `c_schema` text,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_configinfo_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=config_info;

/******************************************/
/*   数据库全名 = nacos_config   */
/*   表名称 = config_info_aggr   */
/******************************************/
CREATE TABLE `config_info_aggr` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT id,
  `data_id` varchar(255) NOT NULL COMMENT data_id,
  `group_id` varchar(255) NOT NULL COMMENT group_id,
  `datum_id` varchar(255) NOT NULL COMMENT datum_id,
  `content` longtext NOT NULL COMMENT 内容,
  `gmt_modified` datetime NOT NULL COMMENT 修改时间,
  `app_name` varchar(128) DEFAULT NULL,
  `tenant_id` varchar(128) DEFAULT ‘‘ COMMENT 租户字段,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_configinfoaggr_datagrouptenantdatum` (`data_id`,`group_id`,`tenant_id`,`datum_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=增加租户字段;


/******************************************/
/*   数据库全名 = nacos_config   */
/*   表名称 = config_info_beta   */
/******************************************/
CREATE TABLE `config_info_beta` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT id,
  `data_id` varchar(255) NOT NULL COMMENT data_id,
  `group_id` varchar(128) NOT NULL COMMENT group_id,
  `app_name` varchar(128) DEFAULT NULL COMMENT app_name,
  `content` longtext NOT NULL COMMENT content,
  `beta_ips` varchar(1024) DEFAULT NULL COMMENT betaIps,
  `md5` varchar(32) DEFAULT NULL COMMENT md5,
  `gmt_create` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 创建时间,
  `gmt_modified` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 修改时间,
  `src_user` text COMMENT source user,
  `src_ip` varchar(20) DEFAULT NULL COMMENT source ip,
  `tenant_id` varchar(128) DEFAULT ‘‘ COMMENT 租户字段,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_configinfobeta_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=config_info_beta;

/******************************************/
/*   数据库全名 = nacos_config   */
/*   表名称 = config_info_tag   */
/******************************************/
CREATE TABLE `config_info_tag` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT id,
  `data_id` varchar(255) NOT NULL COMMENT data_id,
  `group_id` varchar(128) NOT NULL COMMENT group_id,
  `tenant_id` varchar(128) DEFAULT ‘‘ COMMENT tenant_id,
  `tag_id` varchar(128) NOT NULL COMMENT tag_id,
  `app_name` varchar(128) DEFAULT NULL COMMENT app_name,
  `content` longtext NOT NULL COMMENT content,
  `md5` varchar(32) DEFAULT NULL COMMENT md5,
  `gmt_create` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 创建时间,
  `gmt_modified` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 修改时间,
  `src_user` text COMMENT source user,
  `src_ip` varchar(20) DEFAULT NULL COMMENT source ip,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_configinfotag_datagrouptenanttag` (`data_id`,`group_id`,`tenant_id`,`tag_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=config_info_tag;

/******************************************/
/*   数据库全名 = nacos_config   */
/*   表名称 = config_tags_relation   */
/******************************************/
CREATE TABLE `config_tags_relation` (
  `id` bigint(20) NOT NULL COMMENT id,
  `tag_name` varchar(128) NOT NULL COMMENT tag_name,
  `tag_type` varchar(64) DEFAULT NULL COMMENT tag_type,
  `data_id` varchar(255) NOT NULL COMMENT data_id,
  `group_id` varchar(128) NOT NULL COMMENT group_id,
  `tenant_id` varchar(128) DEFAULT ‘‘ COMMENT tenant_id,
  `nid` bigint(20) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`nid`),
  UNIQUE KEY `uk_configtagrelation_configidtag` (`id`,`tag_name`,`tag_type`),
  KEY `idx_tenant_id` (`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=config_tag_relation;

/******************************************/
/*   数据库全名 = nacos_config   */
/*   表名称 = group_capacity   */
/******************************************/
CREATE TABLE `group_capacity` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 主键ID,
  `group_id` varchar(128) NOT NULL DEFAULT ‘‘ COMMENT Group ID,空字符表示整个集群,
  `quota` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 配额,0表示使用默认值,
  `usage` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 使用量,
  `max_size` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 单个配置大小上限,单位为字节,0表示使用默认值,
  `max_aggr_count` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 聚合子配置最大个数,,0表示使用默认值,
  `max_aggr_size` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值,
  `max_history_count` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 最大变更历史数量,
  `gmt_create` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 创建时间,
  `gmt_modified` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 修改时间,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_group_id` (`group_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=集群、各Group容量信息表;

/******************************************/
/*   数据库全名 = nacos_config   */
/*   表名称 = his_config_info   */
/******************************************/
CREATE TABLE `his_config_info` (
  `id` bigint(64) unsigned NOT NULL,
  `nid` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(128) NOT NULL,
  `app_name` varchar(128) DEFAULT NULL COMMENT app_name,
  `content` longtext NOT NULL,
  `md5` varchar(32) DEFAULT NULL,
  `gmt_create` datetime NOT NULL DEFAULT 2010-05-05 00:00:00,
  `gmt_modified` datetime NOT NULL DEFAULT 2010-05-05 00:00:00,
  `src_user` text,
  `src_ip` varchar(20) DEFAULT NULL,
  `op_type` char(10) DEFAULT NULL,
  `tenant_id` varchar(128) DEFAULT ‘‘ COMMENT 租户字段,
  PRIMARY KEY (`nid`),
  KEY `idx_gmt_create` (`gmt_create`),
  KEY `idx_gmt_modified` (`gmt_modified`),
  KEY `idx_did` (`data_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=多租户改造;


/******************************************/
/*   数据库全名 = nacos_config   */
/*   表名称 = tenant_capacity   */
/******************************************/
CREATE TABLE `tenant_capacity` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 主键ID,
  `tenant_id` varchar(128) NOT NULL DEFAULT ‘‘ COMMENT Tenant ID,
  `quota` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 配额,0表示使用默认值,
  `usage` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 使用量,
  `max_size` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 单个配置大小上限,单位为字节,0表示使用默认值,
  `max_aggr_count` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 聚合子配置最大个数,
  `max_aggr_size` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值,
  `max_history_count` int(10) unsigned NOT NULL DEFAULT 0 COMMENT 最大变更历史数量,
  `gmt_create` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 创建时间,
  `gmt_modified` datetime NOT NULL DEFAULT 2010-05-05 00:00:00 COMMENT 修改时间,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_tenant_id` (`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=租户容量信息表;


CREATE TABLE `tenant_info` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT id,
  `kp` varchar(128) NOT NULL COMMENT kp,
  `tenant_id` varchar(128) default ‘‘ COMMENT tenant_id,
  `tenant_name` varchar(128) default ‘‘ COMMENT tenant_name,
  `tenant_desc` varchar(256) DEFAULT NULL COMMENT tenant_desc,
  `create_source` varchar(32) DEFAULT NULL COMMENT create_source,
  `gmt_create` bigint(20) NOT NULL COMMENT 创建时间,
  `gmt_modified` bigint(20) NOT NULL COMMENT 修改时间,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_tenant_info_kptenantid` (`kp`,`tenant_id`),
  KEY `idx_tenant_id` (`tenant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=tenant_info;

CREATE TABLE users (
    username varchar(50) NOT NULL PRIMARY KEY,
    password varchar(500) NOT NULL,
    enabled boolean NOT NULL
);

CREATE TABLE roles (
    username varchar(50) NOT NULL,
    role varchar(50) NOT NULL
);

INSERT INTO users (username, password, enabled) VALUES (nacos, $2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu, TRUE);

INSERT INTO roles (username, role) VALUES (nacos, ROLE_ADMIN);
View Code

 

以上是关于docker 安装 nacos的主要内容,如果未能解决你的问题,请参考以下文章

docker安装nacos2.x

Docker 安装 Nacos服务

docker安装Nacos

docker安装Nacos

Docker 安装 Nacos1.3.1

docker 启动nacos