当前位置:   article > 正文

docker安装最新版nacos详细教程_docker安装nacos

docker安装nacos

一、下载最新版nacos,linux如果没有安装docker,百度自行查找linux安装docker教程

docker pull nacos/nacos-server

下载完成后查看已下载的镜像docker images  

二、运行nacos容器

docker run -p 8848:8848  --name nacos -d nacos/nacos-server:latest

运行成功后,查看运行中的容器,docker ps,发现容器已运行,如下图

三、设置nacos挂载目录为/usr/local/nacos,并将容器里都conf目录、logs目录、data目录复制到宿主机/usr/local/nacos目录里,执行下面都命令,如下:

docker cp nacos:/home/nacos/conf /usr/local/nacos
docker cp nacos:/home/nacos/logs /usr/local/nacos
docker cp nacos:/home/nacos/data /usr/local/nacos

四、修改nacos数据库配置,进入 /usr/local/nacos/conf/目录,修改application.properties文件

cd /usr/local/nacos/conf/

vi application.properties

如上图所示,修改这三个匡红都地方,按你实际的数据库信息来修改,修改完保持退出vi编辑。

五、停止和删除刚才运行的nacos容器

docker stop nacos   停止容器

docker rm nacos  彻底删除容器

六、在/usr/local/nacos/conf/目录里,下载schema.sql文件到本地,然后在你的mysql数据库里新建一个名为nacos的数据库后,在数据库里执行一下schema.sql,不出意外,执行过程中会报错,不要着急,逐个排查问题和解决sql问题,最后所有的sql问题都排查和解决完毕以后,将已经生成的库表全部删除掉,然后将最后整理解决完问题后都sql整体执行一下就行了。下图是我最终执行后的结果,生成15个表

下面是我最终整理的sql语句

  1. /*
  2. * Copyright 1999-2018 Alibaba Group Holding Ltd.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. START TRANSACTION;
  17. CREATE TABLE config_info (
  18. id bigint NOT NULL AUTO_INCREMENT,
  19. data_id varchar(255) NOT NULL,
  20. group_id varchar(128) NOT NULL,
  21. tenant_id varchar(128) default '',
  22. app_name varchar(128),
  23. content LONGTEXT,
  24. md5 varchar(32) DEFAULT NULL,
  25. gmt_create timestamp NOT NULL DEFAULT '2010-05-05 00:00:00',
  26. gmt_modified timestamp NOT NULL DEFAULT '2010-05-05 00:00:00',
  27. src_user varchar(128) DEFAULT NULL,
  28. src_ip varchar(50) DEFAULT NULL,
  29. c_desc varchar(256) DEFAULT NULL,
  30. c_use varchar(64) DEFAULT NULL,
  31. effect varchar(64) DEFAULT NULL,
  32. type varchar(64) DEFAULT NULL,
  33. c_schema LONG VARCHAR DEFAULT NULL,
  34. constraint configinfo_id_key PRIMARY KEY (id),
  35. constraint uk_configinfo_datagrouptenant UNIQUE (data_id,group_id,tenant_id));
  36. CREATE INDEX configinfo_dataid_key_idx ON config_info(data_id);
  37. CREATE INDEX configinfo_groupid_key_idx ON config_info(group_id);
  38. CREATE INDEX configinfo_dataid_group_key_idx ON config_info(data_id, group_id);
  39. CREATE TABLE his_config_info (
  40. id bigint NOT NULL,
  41. nid bigint NOT NULL AUTO_INCREMENT,
  42. data_id varchar(255) NOT NULL,
  43. group_id varchar(128) NOT NULL,
  44. tenant_id varchar(128) default '',
  45. app_name varchar(128),
  46. content LONGTEXT,
  47. md5 varchar(32) DEFAULT NULL,
  48. gmt_create timestamp NOT NULL DEFAULT '2010-05-05 00:00:00.000',
  49. gmt_modified timestamp NOT NULL DEFAULT '2010-05-05 00:00:00.000',
  50. src_user varchar(128),
  51. src_ip varchar(50) DEFAULT NULL,
  52. op_type char(10) DEFAULT NULL,
  53. constraint hisconfiginfo_nid_key PRIMARY KEY (nid));
  54. CREATE INDEX hisconfiginfo_dataid_key_idx ON his_config_info(data_id);
  55. CREATE INDEX hisconfiginfo_gmt_create_idx ON his_config_info(gmt_create);
  56. CREATE INDEX hisconfiginfo_gmt_modified_idx ON his_config_info(gmt_modified);
  57. CREATE TABLE config_info_beta (
  58. id bigint NOT NULL AUTO_INCREMENT,
  59. data_id varchar(255) NOT NULL,
  60. group_id varchar(128) NOT NULL,
  61. tenant_id varchar(128) default '',
  62. app_name varchar(128),
  63. content LONGTEXT,
  64. beta_ips varchar(1024),
  65. md5 varchar(32) DEFAULT NULL,
  66. gmt_create timestamp NOT NULL DEFAULT '2010-05-05 00:00:00',
  67. gmt_modified timestamp NOT NULL DEFAULT '2010-05-05 00:00:00',
  68. src_user varchar(128),
  69. src_ip varchar(50) DEFAULT NULL,
  70. constraint configinfobeta_id_key PRIMARY KEY (id),
  71. constraint uk_configinfobeta_datagrouptenant UNIQUE (data_id,group_id,tenant_id));
  72. CREATE TABLE config_info_tag (
  73. id bigint NOT NULL AUTO_INCREMENT,
  74. data_id varchar(255) NOT NULL,
  75. group_id varchar(128) NOT NULL,
  76. tenant_id varchar(128) default '',
  77. tag_id varchar(128) NOT NULL,
  78. app_name varchar(128),
  79. content LONGTEXT,
  80. md5 varchar(32) DEFAULT NULL,
  81. gmt_create timestamp NOT NULL DEFAULT '2010-05-05 00:00:00',
  82. gmt_modified timestamp NOT NULL DEFAULT '2010-05-05 00:00:00',
  83. src_user varchar(128),
  84. src_ip varchar(50) DEFAULT NULL,
  85. constraint configinfotag_id_key PRIMARY KEY (id),
  86. constraint uk_configinfotag_datagrouptenanttag UNIQUE (data_id,group_id,tenant_id,tag_id));
  87. CREATE TABLE config_info_aggr (
  88. id bigint NOT NULL AUTO_INCREMENT,
  89. data_id varchar(255) NOT NULL,
  90. group_id varchar(128) NOT NULL,
  91. tenant_id varchar(128) default '',
  92. datum_id varchar(255) NOT NULL,
  93. app_name varchar(128),
  94. content LONGTEXT,
  95. gmt_modified timestamp NOT NULL DEFAULT '2010-05-05 00:00:00',
  96. constraint configinfoaggr_id_key PRIMARY KEY (id),
  97. constraint uk_configinfoaggr_datagrouptenantdatum UNIQUE (data_id,group_id,tenant_id,datum_id));
  98. CREATE TABLE app_list (
  99. id bigint NOT NULL AUTO_INCREMENT,
  100. app_name varchar(128) NOT NULL,
  101. is_dynamic_collect_disabled smallint DEFAULT 0,
  102. last_sub_info_collected_time timestamp DEFAULT NULL,
  103. sub_info_lock_owner varchar(128),
  104. sub_info_lock_time timestamp DEFAULT NULL,
  105. constraint applist_id_key PRIMARY KEY (id),
  106. constraint uk_appname UNIQUE (app_name));
  107. CREATE TABLE app_configdata_relation_subs (
  108. id bigint NOT NULL AUTO_INCREMENT,
  109. app_name varchar(128) NOT NULL,
  110. data_id varchar(255) NOT NULL,
  111. group_id varchar(128) NOT NULL,
  112. gmt_modified timestamp DEFAULT NULL,
  113. constraint configdatarelationsubs_id_key PRIMARY KEY (id),
  114. constraint uk_app_sub_config_datagroup UNIQUE (app_name, data_id, group_id));
  115. CREATE TABLE app_configdata_relation_pubs (
  116. id bigint NOT NULL AUTO_INCREMENT,
  117. app_name varchar(128) NOT NULL,
  118. data_id varchar(255) NOT NULL,
  119. group_id varchar(128) NOT NULL,
  120. gmt_modified timestamp DEFAULT NULL,
  121. constraint configdatarelationpubs_id_key PRIMARY KEY (id),
  122. constraint uk_app_pub_config_datagroup UNIQUE (app_name, data_id, group_id));
  123. CREATE TABLE config_tags_relation (
  124. id bigint NOT NULL,
  125. tag_name varchar(128) NOT NULL,
  126. tag_type varchar(64) DEFAULT NULL,
  127. data_id varchar(255) NOT NULL,
  128. group_id varchar(128) NOT NULL,
  129. tenant_id varchar(128) DEFAULT '',
  130. nid bigint NOT NULL AUTO_INCREMENT,
  131. constraint config_tags_id_key PRIMARY KEY (nid),
  132. constraint uk_configtagrelation_configidtag UNIQUE (id, tag_name, tag_type));
  133. CREATE INDEX config_tags_tenant_id_idx ON config_tags_relation(tenant_id);
  134. CREATE TABLE group_capacity (
  135. id bigint NOT NULL AUTO_INCREMENT,
  136. group_id varchar(128) DEFAULT '',
  137. quota int DEFAULT 0,
  138. `usage` int DEFAULT 0,
  139. max_size int DEFAULT 0,
  140. max_aggr_count int DEFAULT 0,
  141. max_aggr_size int DEFAULT 0,
  142. max_history_count int DEFAULT 0,
  143. gmt_create timestamp DEFAULT NULL,
  144. gmt_modified timestamp DEFAULT NULL,
  145. constraint group_capacity_id_key PRIMARY KEY (id),
  146. constraint uk_group_id UNIQUE (group_id));
  147. CREATE TABLE tenant_capacity (
  148. id bigint NOT NULL AUTO_INCREMENT,
  149. tenant_id varchar(128) DEFAULT '',
  150. quota int DEFAULT 0,
  151. `usage` int DEFAULT 0,
  152. max_size int DEFAULT 0,
  153. max_aggr_count int DEFAULT 0,
  154. max_aggr_size int DEFAULT 0,
  155. max_history_count int DEFAULT 0,
  156. gmt_create timestamp DEFAULT NULL,
  157. gmt_modified timestamp DEFAULT NULL,
  158. constraint tenant_capacity_id_key PRIMARY KEY (id),
  159. constraint uk_tenant_id UNIQUE (tenant_id));
  160. CREATE TABLE tenant_info (
  161. id bigint NOT NULL AUTO_INCREMENT,
  162. kp varchar(128) NOT NULL,
  163. tenant_id varchar(128) DEFAULT '',
  164. tenant_name varchar(128) DEFAULT '',
  165. tenant_desc varchar(256) DEFAULT NULL,
  166. create_source varchar(32) DEFAULT NULL,
  167. gmt_create bigint NOT NULL,
  168. gmt_modified bigint NOT NULL,
  169. constraint tenant_info_id_key PRIMARY KEY (id),
  170. constraint uk_tenant_info_kptenantid UNIQUE (kp,tenant_id));
  171. CREATE INDEX tenant_info_tenant_id_idx ON tenant_info(tenant_id);
  172. CREATE TABLE users (
  173. username varchar(50) NOT NULL PRIMARY KEY,
  174. password varchar(500) NOT NULL,
  175. enabled boolean NOT NULL DEFAULT true
  176. );
  177. CREATE TABLE roles (
  178. username varchar(50) NOT NULL,
  179. role varchar(50) NOT NULL,
  180. constraint uk_username_role UNIQUE (username,role)
  181. );
  182. CREATE TABLE permissions (
  183. role varchar(50) NOT NULL,
  184. resource varchar(512) NOT NULL,
  185. action varchar(8) NOT NULL,
  186. constraint uk_role_permission UNIQUE (role,resource,action)
  187. );
  188. INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);
  189. INSERT INTO roles (username, role) VALUES ('nacos', 'ROLE_ADMIN');
  190. /******************************************/
  191. /* ipv6 support */
  192. /******************************************/
  193. ALTER TABLE `config_info_tag`
  194. MODIFY COLUMN `src_ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT 'source ip' AFTER `src_user`;
  195. ALTER TABLE `his_config_info`
  196. MODIFY COLUMN `src_ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL AFTER `src_user`;
  197. ALTER TABLE `config_info`
  198. MODIFY COLUMN `src_ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT 'source ip' AFTER `src_user`;
  199. ALTER TABLE `config_info_beta`
  200. MODIFY COLUMN `src_ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT 'source ip' AFTER `src_user`;
  201. COMMIT;
  202. -- 如果中途发生错误,回滚事务
  203. ROLLBACK;

七、设置数据库账号可以远程登录,你可以新建一个账号,我这里为了方便,我就直接用的root账号,将root设置成可以远程登录。

  1. #设置%和mysql_native_password 表示root可以远程登录
  2. ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
  3. #刷新权限
  4. FLUSH PRIVILEGES;
  5. #如果可以的话,可以再重启一下mysql服务(这步可选,我自己是重启了一次)

八、启动nacos容器

docker run --name nacos -d -p 8848:8848 -p 9848:9848 -p 9849:9849 --restart=always --privileged=true --env MODE=standalone --env NACOS_AUTH_ENABLE=true -e JVM_XMS=128m -e JVM_XMX=128m -e JVM_XMN=64m -v /usr/local/nacos/conf/:/home/nacos/conf -v /usr/local/nacos/logs/:/home/nacos/logs -v /usr/local/nacos/data/:/home/nacos/data nacos/nacos-server:latest

启动以后,docker ps 查看容器运行状态,如下图所示,表示nacos服务已启动

九、浏览器访问nacos

访问地址:你的linux服务器的IP:8848/nacos,初始账号密码都是nacos

十、上述浏览器中如果无法访问,请关闭mysql所在服务器的防火墙,Linux服务器的防火墙。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/886355
推荐阅读
相关标签
  

闽ICP备14008679号