汕头市网站建设,蓝天使网站建设,东莞网站设计公司有哪些,官方网站优化价格使用docker搭建nacos docker搭建最新版nacosMySQL下简历nacos配置数据表拉取镜像创建挂载目录启动容器访问nacos docker搭建nacos 2.0版本 docker搭建最新版nacos
最近想在自己服务器上搭建一个nacos服务#xff0c;以前一直在本地的windows上使用#xff0c;而且使用着naco… 使用docker搭建nacos docker搭建最新版nacosMySQL下简历nacos配置数据表拉取镜像创建挂载目录启动容器访问nacos docker搭建nacos 2.0版本 docker搭建最新版nacos
最近想在自己服务器上搭建一个nacos服务以前一直在本地的windows上使用而且使用着nacos自带的数据库。现在准备搭建到服务器上然后数据库也连接为mysql进行使用。
MySQL下简历nacos配置数据表
通过如下sql建立相关表如果中间报错可能是数据库版本问题尽量是5.7以上的mysql版本。
/******************************************/
/* 数据库全名 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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_bin COMMENTconfig_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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_bin COMMENTconfig_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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_bin COMMENTconfig_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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_bin COMMENTconfig_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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_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)
) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_bin COMMENTtenant_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,constraint uk_username_role UNIQUE (username,role)
);CREATE TABLE permissions (role varchar(50) NOT NULL,resource varchar(512) NOT NULL,action varchar(8) NOT NULL,constraint uk_role_permission UNIQUE (role,resource,action)
);INSERT INTO users (username, password, enabled) VALUES (nacos, $2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu, TRUE);INSERT INTO roles (username, role) VALUES (nacos, ROLE_ADMIN);或者是直接在github上下载最新的数据库脚本文件
拉取镜像
docker pull nacos/nacos-server创建挂载目录
这个可以自己在shell目录上直接新建也可以使用madir创建一下最后记住路径就好。两个目录init.d和logs。 在目录init.d下创建custom.properties文件其中填写了 1、访问端口和访问路径 2、数据库连接信息 3、nacos的一些默认配置项如果修改需要看具体nacos文档。 4、nacos从2.2版本后加入了鉴权功能如果使用默认配置nacos.core.auth.enabledfalse可以不用登录也没有登录页面但是进入会提示当前集群没有开启鉴权请参考文档开启鉴权~右上角也没有登录用户。如过配置了nacos.core.auth.enabledtrue则需要按照如下配置增加nacos.core.auth.plugin.nacos.token.secret.keyMTIzNDU2Nzg5MTIzNDU2Nzg5MTIzNDU2Nzg5MWNoZW4KIA nacos.core.auth.server.identity.keynacos nacos.core.auth.server.identity.valuenacos内容这样才可以进行登录
server.contextPath/nacos
server.servlet.contextPath/nacos
server.port8848spring.datasource.platformmysql
db.num1
db.url.0jdbc:mysql://101.42.***.48:3306/nacos_config? characterEncodingutf8connectTimeout1000socketTimeout3000autoReconnecttrue #这里需要修改端口
db.userroot #用户名
db.password*** #密码nacos.cmdb.dumpTaskInterval3600
nacos.cmdb.eventTaskInterval10
nacos.cmdb.labelTaskInterval300
nacos.cmdb.loadDataAtStartfalse
management.metrics.export.elastic.enabledfalse
management.metrics.export.influx.enabledfalse
server.tomcat.accesslog.enabledtrue
server.tomcat.accesslog.pattern%h %l %u %t %r %s %b %D %{User-Agent}i
nacos.security.ignore.urls/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount1
nacos.naming.distro.taskDispatchPeriod200
nacos.naming.distro.batchSyncKeyCount1000
nacos.naming.distro.initDataRatio0.9
nacos.naming.distro.syncRetryDelay5000
nacos.naming.data.warmuptrue
nacos.naming.expireInstancetruenacos.core.auth.system.typenacos
nacos.core.auth.enabledtrue
nacos.core.auth.default.token.expire.seconds18000
nacos.istio.mcp.server.enabledfalse
nacos.core.auth.caching.enabledtrue
nacos.core.auth.enable.userAgentAuthWhitetruenacos.core.auth.plugin.nacos.token.secret.keyMTIzNDU2Nzg5MTIzNDU2Nzg5MTIzNDU2Nzg5MWNoZW4KIA
nacos.core.auth.server.identity.keynacos
nacos.core.auth.server.identity.valuenacos启动容器
使用如下命令启动容器即可
docker run -d --name cjy-nacos \
--restartalways \
--networkhost \
-e MODEstandalone \
-e JVM_XMS256m \
-e JVM_XMX256m \
-e SPRING_DATASOURCE_PLATFORMmysql \
-e MYSQL_SERVICE_HOST数据库的ip地址 \
-e MYSQL_SERVICE_PORT3306 \
-e MYSQL_SERVICE_DB_NAMEnacos_config \
-e MYSQL_SERVICE_USERroot \
-e MYSQL_SERVICE_PASSWORD***** \
-e MYSQL_DATABASE_NUM1 \
-v /opt/CJY/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \
-v /opt/CJY/nacos/logs:/home/nacos/logs \
nacos/nacos-server命令解释如下 –name容器的名称可以自定义。 -d以后台模式运行容器。 -p将容器的端口映射到宿主机的端口。 –restartalways容器的重启策略。开机自启 –networkhost表明直接使用本地的端口映射就不需要额外配置8848:8848了 -e设置容器的环境变量。 -v将本地的目录挂载到容器中。这里前边是自己系统的目录后边是映射容器中的目录 访问nacos
使用浏览器访问http://ip:8848/nacos就可以直接访问了。
但是使用了最新版本的nacos后因为和以前项目中pom引入的nacos版本不统一运行时会一直有以下日志信息但是并不影响项目运行 login http request failed url: http://101.42.165.48:8848/nacos/v1/auth/users/login, params: {usernamenacos}, bodyMap: {passwordnacos}, errorMsg: Server returned HTTP response code: 500 for URL: http://101.42.165.48:8848/nacos/v1/auth/users/login?usernamenacos 一种是把pom的nacos版本升级另一种是重新安装以前旧版本的nacos比如2.0版本的。下次补充一下旧版本的nacos搭建吧
docker搭建nacos 2.0版本