前言

nacos作为主流的服务发现中心和配置中心,广泛应用于springcloud框架中,现在就让我们一起简易的部署一个单例模式的nacos,版本可能较低,v2.0.4,但胜在稳定且脱离mysql

安装

创建文件夹

mkdir -p /home/docker_home/nacos/nacos-data/{logs,data}

创建logs和data文件夹

docker指令安装

docker run -d \
--name nacos \
--restart=always \
-p 8848:8848 \
-e MODE=standalone \
-v /home/docker_home/nacos/nacos-data/logs/:/home/nacos/logs \
-v /home/docker_home/nacos/nacos-data/data/:/home/nacos/data \
nacos/nacos-server:v2.0.4

此处注意!想用derby数据库,推荐使用2.0.4,如果是其他版本,可能已经引进了mysql,到时候安装起来就会麻烦一些,要求你自己去初始化数据库

docker指令安装-瘦身版

docker run -d \
--name nacos-server \
--net=host \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=nacoshost \
-v /home/docker_home/nacos/nacos-data/logs/:/home/nacos/logs \
-v /home/docker_home/nacos/nacos-data/data/:/home/nacos/data \
nacos/nacos-server:v2.0.4-slim

这个版本是网上别人使用的版本,我也是从这个版本演变了一下过来的,如果是自己用的话,其实用slim版本可能也是一个不错的选择,但基于是公司项目,为了保全,还是使用了完整版,且通过端口限制访问,不是完全的开放出来,直接使用宿主网络。

制作docker-compose.yaml文件

version: '3.8'

services:
  nacos:
    container_name: nacos
    image: nacos/nacos-server:v2.0.4
    restart: always
    ports:
      - "8848:8848"
    environment:
      - MODE=standalone
    volumes:
      - /home/docker_home/nacos/nacos-data/logs/:/home/nacos/logs
      - /home/docker_home/nacos/nacos-data/data/:/home/nacos/data

通过chatGPT,你能很方便的转化出docker-compose.yaml文件

查看页面

在浏览器中访问: http://127.0.0.1:8848/nacos
默认用户名和密码都是:nacos
记得修改
在这里插入图片描述

额外补充:集群化部署的端口开放

  • 下面是官方的说明,对此需要额外开放9848和9849端口

在这里插入图片描述

GitHub 加速计划 / na / nacos
123
24
下载
Nacos是由阿里巴巴开源的服务治理中间件,集成了动态服务发现、配置管理和服务元数据管理功能,广泛应用于微服务架构中,简化服务治理过程。
最近提交(Master分支:4 个月前 )
762303b9 * [ISSUE #12970] Fix NamingMetadataManager.removeInstanceMetadata() error fix #12970 * Update NamingMetadataManagerTest.java 3 天前
05561813 * fix type search on mysql model * 灰度模型迁移程序并发&迁移不落历史表 * Config migrate executor times * 1.Config migrate executor times 2. history comparation optimize * 1.Config migrate executor times 2. history comparation optimize * checkstyle 3 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐