使用docker-compose安装mysql+redis+nacos

docker-compose:

yaml 复制代码
services:
  mysql:
    image: mysql:8.4.0
    container_name: mysql
    environment:
      # 时区上海
      TZ: Asia/Shanghai
      MYSQL_ROOT_PASSWORD: ${PASSWORD:-123456}
    command:
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
    ports:
      - "3306:3306"
    volumes:
      - ${home:-/home/docker/config}/mysql/data/:/var/lib/mysql/
      - ${home:-/home/docker/config}/mysql/conf/:/etc/mysql/conf.d/
    networks:
      - app-network
    privileged: true
    # 持续重启(手动关闭不重启)
    restart: unless-stopped

  redis:
    image: redis:7.4.7
    container_name: redis
    command: >
      redis-server
      --maxmemory 128mb
      --maxmemory-policy allkeys-lru
      --save 900 1
      --save 300 10
      --save 60 10000
      --notify-keyspace-events Ex
      --rdbcompression yes 
      --appendonly yes
      --appendfilename "appendonly.aof"
      --appendfsync everysec
      --requirepass ${PASSWORD:-123456}
    ports:
      - "6379:6379"
    volumes:
      - ${home:-/home/docker/config}/redis/conf/redis.conf:/etc/redis/redis.conf
      - ${home:-/home/docker/config}/redis/data:/data
    networks:
      - app-network
    restart: unless-stopped

  nacos:
    image: nacos/nacos-server:v3.1.0
    container_name: nacos
    restart: unless-stopped
    environment:
      - MODE=standalone
      - NACOS_AUTH_TOKEN=tGXyHX2bYj1pRtvfs4ul94ds1wK9WNwqU/xC1ie9tQY=
      - NACOS_AUTH_IDENTITY_KEY=nacos.cluster.id
      - NACOS_AUTH_IDENTITY_VALUE=7x9Lm2pQr8sT4vW6yZ1aB3cD5eF7gH9j
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=mysql
      - MYSQL_SERVICE_PORT=3306
      - MYSQL_SERVICE_DB_NAME=nacos
      - MYSQL_SERVICE_USER=root
      - MYSQL_SERVICE_PASSWORD=${PASSWORD:-123456}
      - MYSQL_DATABASE_NUM=1
    ports:
      - "8080:8080"
      - "8848:8848"
      - "9848:9848"
      - "9849:9849"
    volumes:
      # 日志目录 注意集群模式下 日志目录不能一致 需要区分例如 nacos1 nacos2
      - ${home:-/home/docker/config}/nacos/logs/:/home/nacos/logs/
    depends_on:
      - mysql
    networks:
      - app-network
networks:
  app-network:
    driver: bridge

启动命令:

home为挂载路径

bash 复制代码
PASSWORD=123456 home=/Users/admin/java/docker docker-compose up -d
相关推荐
仍然.6 小时前
Redis---缓存
数据库·redis·缓存
m0_646429976 小时前
Docker 完整核心知识点总结(超通俗易懂版)
运维·docker·容器
天天喝旺仔7 小时前
MySQL 索引原理与慢查询优化实战:从 B+ 树到执行计划调优
数据库·sql·mysql·性能优化
m0_646429978 小时前
MySQL 初始化 SQL 中文乱码问题总结
数据库·sql·mysql
实战派K8S&DB9 小时前
TDSQL 核心模块与进程体系
运维·数据库·分布式·sql·mysql
吴声子夜歌9 小时前
Docker入门与实战——实战案例(Web服务与应用)
docker·容器
仍然.9 小时前
Redis---分布式锁
数据库·redis·分布式
Lost_the_wind9 小时前
MySQL 学习笔记三
笔记·学习·mysql
Wang's Blog9 小时前
Java 项目部署之 Docker工具快速入门: Docker 架构拆解:镜像、容器、守护进程与 Registry
java·docker·架构
java_logo9 小时前
Docker 部署 OpenViking:轻松搭建 AI Agent 上下文数据库平台
数据库·人工智能·docker·agent·火山引擎·openviking·轩辕镜像