Docker 精简安装 Nacos 2.2.1 单机版本

news2024/11/24 15:52:58

准备工作:

        1)已安装docker

        2)数据库准备,演示使用MySql5.7版本

1、拉取

[root@Tseng-HW ~]# docker pull nacos/nacos-server:v2.2.1
v2.2.1: Pulling from nacos/nacos-server
2d473b07cdd5: Already exists 
77c5a601c050: Pull complete 
5fce895ad971: Pull complete 
86555f63872e: Pull complete 
801400643684: Pull complete 
e63e427570f7: Pull complete 
4343e9b5093f: Pull complete 
61845c2b228d: Pull complete 
520260df9bc4: Pull complete 
4f4fb700ef54: Pull complete 
Digest: sha256:7300018322cadf17e8f00256197b361559efa6ab52a101ad52fbcd4f775dc057
Status: Downloaded newer image for nacos/nacos-server:v2.2.1
docker.io/nacos/nacos-server:v2.2.1
[root@Tseng-HW ~]#

2、创建挂载目录

[root@Tseng-HW ~]# mkdir -p /data/nacos/conf
[root@Tseng-HW ~]# mkdir -p /data/nacos/logs
[root@Tseng-HW ~]# mkdir -p /data/nacos/data

3、启动nacos,复制配置文件到挂载目录,备份配置文件、删除启动的nacos

[root@Tseng-HW ~]# docker run --name nacos221 -d -p 8848:8848 -e MODE=standalone  nacos/nacos-server:v2.2.1
5d9eecf4f9b5b5f138483fc711f4a4194b0d9d6d69ede4ad0a06e1fd711ee521
[root@Tseng-HW ~]# docker cp nacos221:/home/nacos/conf/ /data/nacos/
[root@Tseng-HW ~]# docker cp nacos221:/home/nacos/logs/ /data/nacos/
[root@Tseng-HW ~]# docker cp nacos221:/home/nacos/data/ /data/nacos/
[root@Tseng-HW ~]# cd /data/nacos/conf/
[root@Tseng-HW conf]# ls
1.4.0-ipv6_support-update.sql  application.properties  derby-schema.sql  mysql-schema.sql  nacos-logback.xml
[root@Tseng-HW conf]# cp application.properties application_bk.properties
[root@Tseng-HW conf]# docker rm 5d9e

4、创建数据库、执行数据库脚本,数据库脚本两个路径

        1)配置文件中:/data/nacos/conf 下的  application.properties 文件

[root@Tseng-HW ~]# cd /data/nacos/conf/
[root@Tseng-HW conf]# ls
1.4.0-ipv6_support-update.sql  application_bk.properties  application.properties  derby-schema.sql  mysql-schema.sql  nacos-logback.xml
[root@Tseng-HW conf]#

        2)GitHub地址

https://github.com/alibaba/nacos/blob/master/config/src/main/resources/META-INF/nacos-db.sqlicon-default.png?t=N7T8https://github.com/alibaba/nacos/blob/master/config/src/main/resources/META-INF/nacos-db.sql        3)创建数据库,执行脚本

5、修改配置文件:application.properties

# spring
server.servlet.contextPath=/nacos
server.contextPath=/nacos
server.port=8848
server.tomcat.accesslog.max-days=30
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i %{Request-Source}i
server.tomcat.accesslog.enabled=false
# default current work dir
server.tomcat.basedir=file:.
#*************** Config Module Related Configurations ***************#
### Deprecated configuration property, it is recommended to use `spring.sql.init.platform` replaced.
#spring.datasource.platform=${SPRING_DATASOURCE_PLATFORM:}
spring.sql.init.platform=mysql
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
db.num=1
# 注意替换数据库的地址、断开、数据库名称、用户名、密码
db.url.0=jdbc:mysql://****:3308/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false
db.user.0=root
db.password.0=*****
### The auth system to use, currently only 'nacos' and 'ldap' is supported:
nacos.core.auth.system.type=nacos

# 是否开启鉴权功能,默认为false
nacos.core.auth.enabled=true

### worked when nacos.core.auth.system.type=nacos
### The token expiration in seconds: 用户登陆临时accessToken的过期时间
nacos.core.auth.plugin.nacos.token.expire.seconds=18000
### The default token: Base64加密前密码  TcmxJw05k$-_zcx.)8EtFC^D^F1W!IPr  加密网站:https://www.qqxiuzi.cn/bianma/base64.htm
nacos.core.auth.plugin.nacos.token.secret.key=VGNteEp3MDVrJC1femN4Lik4RXRGQ15EXkYxVyFJUHI=
### Turn on/off caching of auth information. By turning on this switch, the update of auth information would have a 15 seconds delay.
nacos.core.auth.caching.enabled=${NACOS_AUTH_CACHE_ENABLE:false}
# 关闭使用user-agent判断服务端请求并放行鉴权的功能
nacos.core.auth.enable.userAgentAuthWhite=false
# 用于替换useragent白名单的身份识别key,不可为空,2.2.1后无默认值
nacos.core.auth.server.identity.key=nacosKey
# 用于替换useragent白名单的身份识别value,不可为空,2.2.1后无默认值
nacos.core.auth.server.identity.value=nacosValue
## spring security config
### turn off security
nacos.security.ignore.urls=${NACOS_SECURITY_IGNORE_URLS:/,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/**}
# metrics for elastic search
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
nacos.naming.distro.taskDispatchThreadCount=10
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000

6、启动nacos

[root@Tseng-HW conf]# docker run -d --name nacos221 --ip 外网/内网IP地址 -p 8848:8848 -p 9848:9848 -p 9849:9849 --restart=always -e jvm_ms=2048m -m 2048m --env MODE=standalone --env NACOS_AUTH_ENABLE=true -v /data/nacos/conf/:/home/nacos/conf -v /data/nacos/logs:/home/nacos/logs -v /data/nacos/data:/home/nacos/data nacos/nacos-server:v2.2.1

         启动说明

docker run -d --name nacos221 \                       -d 表示运行在后台,--name 指定名称为nacos221,我这里安装了多个版本的
--ip ***.***.***.*** \                                访问的IP 地址
-p 8848:8848 \                                        前者为暴露给外部访问的端口,后者为nacos容器端口
-p 9848:9848 \                                        9848是nacos2.0.0版本以上必须要加上端口映射
-p 9849:9849 \                                        9849是nacos2.0.0版本以上必须要加上端口映射
--restart=always                                      Docker 重启时,容器自动启动
-e jvm_ms=2048m                                       限制jvm  2G
-m 2048m                                              限制内存 2G
--env MODE=standalone \                               nacos以单机版启动,默认为cluster(集群)
--env NACOS_AUTH_ENABLE=true \                        如果使用官方镜像,请在启动docker容器时,添加如下环境变量
-v /data/docker/nacos/conf/:/home/nacos/conf \        nacos 配置文件目录,“:”前为服务器目录,“:”后为nacos容器中的目录
-v /data/docker/nacos/logs:/home/nacos/logs \         nacos 日志文件目录,“:”前为服务器目录,“:”后为nacos容器中的目录
-v /data/nacos/data:/home/nacos/data \                nacos 数据文件目录,“:”前为服务器目录,“:”后为nacos容器中的目录
nacos/nacos-server:v2.2.1                             指定 docker nacos 版本,这里是2.2.1版本

7、配置服务器安全组端口,访问:IP地址:8848/nacos ,用户名/密码:nacos/nacos 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1044766.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网安新战场:CTF的那些事儿

CTF CTF的前世今生CTF竞赛中的挑战和难题CTF竞赛必备知识CTF竞赛中的技巧与策略: 写在末尾 主页传送门:📀 传送 CTF的前世今生 CTF(Capture The Flag)是一种网络安全竞赛,旨在测试参与者解决各种网络安全问…

震坤行商品详情数据接口

震坤行商品详情数据接口可以通过HTTP请求和响应获取商品详情信息。请求方法为GET,请求参数包括商品ID和API密钥,响应数据为JSON格式。 API控制台获取API密钥:注册并登录震坤行API控制台,创建项目并获取API密钥。 JavaScript调用…

(三)推断的逼近方法-通过加权重采样的贝叶斯定理

加权重采样 import numpy as np import matplotlib.pyplot as plt# Step 1: Generate 10,000 random theta values from U([0, 1]) n 10000 theta_values np.random.rand(n)# Define the function to compute weights for a given theta def compute_weight(theta):return (…

仕达利恩飞讯软件TPM设备管理项目正式启动,向数字化再迈一步

9月25日,仕达利恩(惠州)科技有限公司(以下简称“仕达利恩”)设备智能数采项目启动会成功召开,仕达利恩首席崔浩渊、杨翠琼次长携项目主要负责人共同出席本次启动会。为解决仕达利恩现阶段生产过程中的设备管理、设备配件仓管理以及…

doT.js模板学习笔记

doT.js模板学习笔记 欢迎学习doT.js模板学习笔记doT.js模板是什么doT.js 主要优势在doT.js好处引入方式基本语法语法示例结尾 欢迎学习doT.js模板学习笔记 doT.js官方网站 本文章得示例源码 doT.js模板是什么 doT.js 是一个 JavaScript 模板框架,在 web 前端使用 d…

Netty场景及其原理

Netty场景及其原理 Netty简化Java NIO的类库的使用,包括Selector、 ServerSocketChannel、 SocketChannel、ByteBuffer,解决了断线重连、 网络闪断、心跳处理、半包读写、 网络拥塞和异常流的处理等。Netty拥有高性能、 吞吐量更高,延迟更低…

909. 蛇梯棋

909. 蛇梯棋 题目-中等难度示例1. bfs 题目-中等难度 给你一个大小为 n x n 的整数矩阵 board ,方格按从 1 到 n2 编号,编号遵循 转行交替方式 ,从左下角开始 (即,从 board[n - 1][0] 开始)每一行交替方向…

Cat Online Judge 判题系统

Cat Online Judge 作者:猫十二懿 项目介绍 本项目是基于 Spring Boot Spring Cloud Alibaba 微服务 Docker RabbitMQ Vue 3 的 编程算法题目在线评测系统 (简称OJ)。 在线访问:http://oj.kongshier.top/ 源项目来自编程导航…

Postman接口自动化

一、接口测试的简介和分类 接口测试就是测试系统组件接口之间的一种测试。 分类 : 测试外部接口: 测试被测系统和外部系统之间的接口。( 只需要测试正例即可 ) 测试内部接口 : 1、内部接口只提供给内部系统使用。( 预算系统,承保系统 )( 只需要测试正例即可 ) 2、…

【算法】分治法

文章目录 概念原理和步骤代码示例 总结 概念 分治法(Divide and Conquer)是一种算法设计策略,其思想是将一个大问题划分为若干小规模的子问题,然后递归地解决每个子问题,并将它们的解合并起来以得到原始问题的解。分治…

记一次springboot的@RequestBody json值注入失败的问题(字段大小写的问题)

有时候做后端开发时,难免会与算法联调接口,很多算法的变量命名时全部大写,在实际springmvc开发中会遇到无法赋值的问题。 先粘贴问题代码 entity类 Data NoArgsConstructor EqualsAndHashCode(callSuper true) ToString(callSuper true) …

Linux命令之chattr命令

一、chattr命令简介 chattr命令用于更改文件或目录的属性,包括不可修改属性、同步属性、追加属性、无尽属性、压缩属性、无尽属性、不可删除属性等。chattr命令只能由超级用户或文件的所有者使用。 二、chattr命令使用示例 1、给文件设置版本 -v参数设置版本信息只…

数据库备份的几种方式

数据已成为当今数字时代公司的主要资产。然而,数据的安全性和完整性也成为企业经营的主要挑战。数据库备份对于维护这些宝贵的数据尤为重要。本文将详细介绍几种比较常见的数据库备份方式,帮助用户掌握如何有效地保护数据,保证业务的可持续发…

linux使用操作[1]

文章目录 版权声明快捷键ctrl c 强制停止ctrl d 退出、登出history命令光标移动快捷键清屏快捷键 软件安装命令常见linux系统包管理器yum命令apt命令 systemctl命令软连接日期&时区修改linux时区ntp程序 IP地址&主机名ip&主机名域名解析win配置主机名映射虚拟机…

Mysql003:基础查询

目录: 1. 基本查询 2. 条件查询(where) 3. 聚合函数(count、max、min、avg、sum) 4. 分组查询(group by) 5. 分组后查询(having) 6. 排序查询(order by&#…

【空间-光谱联合注意网络:多时相遥感图像】

A Spatial–Spectral Joint Attention Network for Change Detection in Multispectral Imagery (一种用于多光谱图像变化检测的空间-光谱联合注意网络) 变化检测是通过比较双时相图像来确定和评估变化,这是遥感领域的一项具有挑战性的任务…

Wireshark抓包分析ICMP协议

「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 分析目的:分析ICMP协议的数据格式、报文…

【赠书活动】无测试组织:测试团队的敏捷转型

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化【获取源码商业合作】 👉荣__誉👈:阿里云博客专家博主、5…

不可忽视的字符函数与字符串函数:它们如何改变你的编程世界

💓博客主页:江池俊的博客⏩收录专栏:C语言进阶之路👉专栏推荐:✅C语言初阶之路 ✅数据结构探索💻代码仓库:江池俊的代码仓库🎉欢迎大家点赞👍评论📝收藏⭐ 文…

苹果恢复出厂设置怎么操作?方法在这!

手机恢复出厂设置,简单点来说就是将手机恢复到出厂时的默认状态。如果在使用手机的过程中遇到内存不足、系统闪退、应用卡顿等问题,可以尝试通过将手机恢复出厂设置来解决问题。那么,苹果恢复出厂设置的方法是什么?还不知道如何操…