首页 > 数据库 >docker-compose -- 创建 redis && mysql

docker-compose -- 创建 redis && mysql

时间:2024-07-18 10:31:28浏览次数:17  
标签:compose -- DB nest redis admin env mysql PORT

version: '3'

services:
  nest-admin-web:
    image: buqiyuan/vue3-antdv-admin:stable
    container_name: nest-admin-web
    volumes:
      - ./deploy/web:/etc/nginx/conf.d
    ports:
      - '80:80'
    restart: always
    networks:
      - nest_admin_net
  mysql:
    image: mysql:latest
    container_name: nest-admin-mysql
    restart: always
    env_file:
      - .env
      - .env.production
    environment:
      - MYSQL_HOST=${DB_HOST}
      - MYSQL_PORT=${DB_PORT}
      - MYSQL_DATABASE=${DB_DATABASE}
      - MYSQL_USERNAME=${DB_USERNAME}
      - MYSQL_PASSWORD=${DB_PASSWORD}
      - MYSQL_ROOT_PASSWORD=${DB_PASSWORD}
    ports:
      - '${DB_PORT}:3306'
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci # 设置utf8字符集
    volumes:
      - ./__data/mysql/:/var/lib/mysql/ # ./__data/mysql/ 路径可以替换成自己的路径
      - ./deploy/sql/:/docker-entrypoint-initdb.d/ # 初始化的脚本,若 ./__data/mysql/ 文件夹存在数据,则不会执行初始化脚本
    networks:
      - nest_admin_net

  redis:
    image: redis:alpine
    container_name: nest-admin-redis
    restart: always
    env_file:
      - .env
      - .env.production
    ports:
      - '${REDIS_PORT}:6379'
    command: >
      --requirepass ${REDIS_PASSWORD}
    networks:
      - nest_admin_net

  nest-admin-server:
    # build: 从当前路径构建镜像
    build:
      context: .
      args:
        - PROJECT_DIR=${PROJECT_DIR}
    image: buqiyuan/nest-admin-server:stable
    container_name: nest-admin-server
    restart: always
    env_file:
      - .env
      - .env.production
    extra_hosts:
      - 'host.docker.internal:host-gateway'
    ports:
      - '${APP_PORT}:${APP_PORT}'
    volumes:
      - ./logs/:${PROJECT_DIR}/logs/ # ./logs 日志文件挂载到容器外部
    # 当前服务启动之前先要把depends_on指定的服务启动起来才行
    depends_on:
      - mysql
      - redis
    networks:
      - nest_admin_net

networks:
  nest_admin_net:
    name: nest_admin_net

 docker-compose 创建 postgewsql 数据库

PostgresSQL 实战:使用 Docker Compose 部署 PostgreSQL_postgresql docker-compose-CSDN博客

标签:compose,--,DB,nest,redis,admin,env,mysql,PORT
From: https://www.cnblogs.com/zhulongxu/p/18308929

相关文章

  • LED与Micro LED显示技术
    LED与MicroLED显示技术LED显示原理参考资料:1.视频资料2.PPT文档1LED工作原理1.1LED的发光原理LED是PN节中载流子复合形成激子,最终激子发光导致的。\[\lambda(nm)=\frac{1240}{E_{g}(eV)}\]空穴和电子在复合时的能隙差(取决于材料)将决定最终发出光的波长的长短,具体的......
  • PHP 数组排序算法对并行处理的影响
    本文由ChatMoney团队出品在PHP开发中,数组排序是一个常见的操作。随着互联网技术的不断发展,对数据处理速度和效率的要求越来越高,如何在保证排序质量的同时提高处理速度成为了一个值得探讨的问题。本文将分析PHP数组排序算法对并行处理的影响,并提供一些优化建议。一、PHP......
  • 趣获客拓客软件,多平台精准获客必备神器
      1.引言在当今竞争激烈的市场环境中,有效地获取和维护客户关系是企业成功的关键。本软件通过集成多种获客渠道,为用户提供了一种高效的客户搜索和管理工具。2.软件功能获客拓客功能:支持抖音、快手、小红书、视频号、爱企查、企查查、高德地图等多个平台的客户搜索。......
  • 如何恢复raid0磁盘阵列中的数据
    恢复RAID0磁盘阵列中的数据是一个相对复杂且风险较高的过程,因为RAID0没有提供数据冗余或错误修复能力,一旦数据丢失,恢复起来较为困难。以下是一个详细的恢复流程,供您参考:一、停止使用故障RAID0阵列在发现数据丢失后,应立即停止使用故障RAID0阵列,以避免数据被进一步损坏或覆盖......
  • 一卡在手,数字化装备场信息无忧:RFID单装信息卡
        随着技术的不断进步和应用的不断深化,数字化装备场在军事领域的作用将越来越重要,为现代战争提供强有力的支持和保障。    RFID单装信息卡在数字化装备场技术中扮演着至关重要的角色。那么,什么是RFID单装信息卡?它对军事领域甚至是其他领域有没有作用呢?跟广......
  • 一些数据库专家称,最新的 MySQL 版本令人失望
    据分析师认为,Oracle 的重点在其他方面,但要说所有创新都可以在社区版中运行是“不公平”的。MySQL 的最新版本让一些评论员和开发者们感到失望,他们担心开源数据库的管理者Oracle可能有其他的“优先事项”。本月初,长期以来一直推销其自有专有数据库系统的Oracle发布了MySQL ......
  • 如何恢复raid5磁盘阵列中的数据
    恢复RAID5磁盘阵列中的数据是一个复杂但重要的过程,需要谨慎操作以避免进一步的数据损失。以下是一个详细的恢复步骤和注意事项:一、数据恢复前的准备1.确认故障情况:1.检查RAID控制器的报警信息和硬盘指示灯状态(如黄灯或红灯)。2.确认掉线或故障的硬盘数量。2.备份所有硬盘:1.......
  • 设计模式-领域逻辑模式-事务脚本(Transaction Script)
    事务脚本的特点多数应用可看成由多个事务组成事务脚本将多个业务逻辑组织成单个过程事务间相互修改各自产生的数据事务脚本的运行机制    使用事务脚本时,领域逻辑主要通过系统所执行的事务来组织。例如:预定酒店过程。事务脚本的组织将整个事务脚本放在一个类里每......
  • 【软件工程造价师必修课:概念篇】6.软件开发工作量评估方法
    根据调整后软件开发规模,评估工作量,公式如下:AE=(S*PDR)*SWF*RDF式中:AE:调整后的评估工作量,单位为人时;S:调整后规模,单位为功能点;PDR:功能点耗时率,单位为人时每功能点。PDR的取值可参见调整因子列表;SWF:软件因素调整因子,包含业务领域、应用类型及质量特性调整因子,上述调整因子的......
  • 如何预防raid0磁盘阵列中的数据
    为了预防RAID0磁盘阵列中数据的丢失,可以采取以下一系列措施。RAID0虽然通过分割数据并写入到多个磁盘上来提高读写速度,但它不提供任何形式的冗余或数据保护,因此数据丢失的风险相对较高。以下是一些预防措施:一、定期备份数据1.全量备份:定期(如每周或每月)进行全量备份,将整个RAID......