蒙阴网站优化,为什么北京一夜封了,环保网页设计,百度识图官网Docker安装Nacos的步骤相对直接#xff0c;但需要注意一些细节以确保安装成功。以下是一个详细的安装步骤指南#xff1a;
1. 安装Docker
首先#xff0c;确保你的系统中已经安装了Docker。如果尚未安装#xff0c;你可以通过访问Docker的官方网站或使用包管理器#xf…Docker安装Nacos的步骤相对直接但需要注意一些细节以确保安装成功。以下是一个详细的安装步骤指南
1. 安装Docker
首先确保你的系统中已经安装了Docker。如果尚未安装你可以通过访问Docker的官方网站或使用包管理器如apt-get、yum等来安装Docker。安装Docker的具体步骤可能因操作系统而异但大多数Linux发行版都提供了Docker的安装包。
2. 拉取Nacos Docker镜像
Nacos官方提供了Docker镜像你可以通过Docker Hub拉取。打开终端或命令提示符运行以下命令来拉取Nacos镜像
docker pull nacos/nacos-server
如果你需要特定版本的Nacos可以在pull命令中指定版本号例如
docker pull nacos/nacos-server:v2.1.0-slim
3. 创建Docker挂载目录
为了持久化Nacos的数据和配置你需要创建一些挂载目录。这些目录将用于存储Nacos的日志文件、配置文件和数据文件。例如
mkdir -p /mydata/nacos/log
mkdir -p /mydata/nacos/conf
mkdir -p /mydata/nacos/data
4. 运行Nacos Docker容器
docker run -p 8848:8848 --name nacos -d nacos/nacos-server
将Docker容器的文件复制到宿主机
docker cp nacos:/home/nacos/logs/ /mydata/nacos/
docker cp nacos:/home/nacos/conf/ /mydata/nacos/
docker cp nacos:/home/nacos/data/ /mydata/nacos/
删除容器
docker rm -f nacos
使用以下命令来启动Nacos Docker容器。这里我们将Nacos配置为单机模式并将容器的8848端口映射到宿主机的8848端口。同时我们还将日志和配置文件目录挂载到宿主机上
docker run -d \ --name nacos \ -p 8848:8848 \ -p 9848:9848 \ -p 9849:9849 \ --privilegedtrue \ --restartalways \ -e MODEstandalone \ -e JVM_XMS256m \ -e JVM_XMX256m \ -v /mydata/nacos/log:/home/nacos/logs \ -v /mydata/nacos/conf:/home/nacos/conf \ -v /mydata/nacos/data:/home/nacos/data \ nacos/nacos-server
docker run -d --name my-nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --privilegedtrue --restartalways -e MODEstandalone -e JVM_XMS256m -e JVM_XMX256m -v /mydata/nacos/log:/home/nacos/logs -v /mydata/nacos/conf:/home/nacos/conf -v /mydata/nacos/data:/home/nacos/data nacos/nacos-server
避免上面执行有误可以执行没有换行符的命令。
创建nacos数据库并执行初始化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)
) 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);如果你使用的是MySQL作为Nacos的持久化存储你还需要在docker run命令中添加相关的环境变量来配置数据库连接信息后续可以修改application.properties进行设置mysql信息。
5. 配置Nacos
如果你需要修改Nacos的配置比如开启鉴权功能或修改数据库配置你可以编辑/mydata/nacos/conf/application.properties文件。对于鉴权功能你需要将nacos.core.auth.enabled设置为true并配置相应的鉴权密钥。
# application.properties 配置文件spring.datasource.platformmysql
db.num1
db.url.0jdbc:mysql://localhost:3306/nacos?characterEncodingutf8connectTimeout1000socketTimeout30000autoReconnecttrueuseUnicodetrueuseSSLfalseserverTimezoneUTC
db.userroot
db.passwordroot
6. 重启Nacos容器
如果你修改了Nacos的配置需要重启容器以使更改生效。你可以使用以下命令来重启容器
docker restart nacos
7. 访问Nacos管理界面
启动容器后你可以通过浏览器访问Nacos的管理界面。默认情况下Nacos的管理界面地址是http://宿主机IP:8848/nacos。首次访问时你可能需要输入用户名和密码默认情况下都是nacos。
注意事项
确保你的宿主机防火墙或安全组规则允许访问8848、9848和9849端口。如果你使用的是云服务器还需要在云控制台中配置相应的安全组规则。在生产环境中建议使用MySQL等外部数据库来持久化Nacos的数据以提高系统的可靠性和可扩展性。
通过以上步骤你应该能够成功地在Docker中安装并运行Nacos。