<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://purl.org/rss/1.0/"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel rdf:about="https://zzs.tdcktz.com/index.php/feed/rss/tag/%E9%83%A8%E7%BD%B2/">
<title>钟志胜的个人网站 - 部署</title>
<link>https://zzs.tdcktz.com/index.php/tag/%E9%83%A8%E7%BD%B2/</link>
<description></description>
<items>
<rdf:Seq>
<rdf:li resource="https://zzs.tdcktz.com/index.php/archives/90/"/>
<rdf:li resource="https://zzs.tdcktz.com/index.php/archives/85/"/>
<rdf:li resource="https://zzs.tdcktz.com/index.php/archives/54/"/>
<rdf:li resource="https://zzs.tdcktz.com/index.php/archives/17/"/>
</rdf:Seq>
</items>
</channel>
<item rdf:about="https://zzs.tdcktz.com/index.php/archives/90/">
<title>私有化部署DIFY手记</title>
<link>https://zzs.tdcktz.com/index.php/archives/90/</link>
<dc:date>2025-05-26T00:20:00+00:00</dc:date>
<description>安装指南：微信视频号：从0到1玩转AI：Dify平台安装 @跟克里斯陈学AI.env配置指南：https://blog.csdn.net/xuhao824/article/details/146333997在腾讯云主机上开放相应的端口主机域名解析：https://console.cloud.tencent.com/cns/detail/xxx.com/records里添加一个dify的A记录在腾讯云域名控制台相应的域名申请免费的SSL证书，放到./docker/nginx/ssl目录里，文件分别是：dify.crt和dify.key(根据2.env配置指南)在终端启动项目：docker-compose -p dify-docker up -d在浏览器上打开https://dify.xxx.com/注：xxx.com为你的域名</description>
</item>
<item rdf:about="https://zzs.tdcktz.com/index.php/archives/85/">
<title>豆包深度分析：通过Docker部署CRMEB Java版本</title>
<link>https://zzs.tdcktz.com/index.php/archives/85/</link>
<dc:date>2025-05-23T22:57:00+00:00</dc:date>
<description>CRMEB Java版本完全支持Docker部署，且官方提供了Docker镜像和配置示例，可显著简化部署流程。以下是具体实现方案：一、Docker部署优势环境隔离：避免与现有系统环境冲突，确保Java版本依赖（如JDK 1.8+、MySQL 5.7+）一致性。快速部署：单节点部署时间从传统方式的2-3天缩短至1小时内。弹性扩展：支持Docker Compose或Kubernetes集群部署，轻松应对高并发场景（如双11促销）。版本管理：通过镜像标签（如crmeb/crmeb-java:v4.4.2）快速回滚或升级。二、单节点Docker部署步骤1. 环境准备服务器配置：4核8G以上，推荐8核16G（生产环境）软件依赖：Docker 20.10+、Docker Compose 1.29+2. 下载Docker Compose配置version: &#039;3&#039;
services:
  # MySQL服务
  mysql:
    image: mysql:5.7
    container_name: crmeb-mysql
    restart: always
    ports:
      - &quot;3306:3306&quot;
    volumes:
      - ./mysql/data:/var/lib/mysql
      - ./mysql/conf:/etc/mysql/conf.d
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: crmeb
      MYSQL_USER: crmeb
      MYSQL_PASSWORD: crmeb123

  # Redis服务
  redis:
    image: redis:6.2
    container_name: crmeb-redis
    restart: always
    ports:
      - &quot;6379:6379&quot;
    volumes:
      - ./redis/data:/data

  # CRMEB Java服务
  crmeb-java:
    image: crmeb/crmeb-java:v4.4.2  # 替换为最新版本
    container_name: crmeb-java
    restart: always
    ports:
      - &quot;8080:8080&quot;
    volumes:
      - ./crmeb/config:/app/config
      - ./crmeb/logs:/app/logs
    environment:
      - SPRING_DATASOURCE_URL=jdbc:mysql://mysql:3306/crmeb?useUnicode=true&amp;characterEncoding=utf-8&amp;useSSL=false&amp;serverTimezone=Asia/Shanghai
      - SPRING_DATASOURCE_USERNAME=crmeb
      - SPRING_DATASOURCE_PASSWORD=crmeb123
      - SPRING_REDIS_HOST=redis
      - SPRING_REDIS_PORT=6379
    depends_on:
      - mysql
      - redis3. 启动容器# 创建目录结构
mkdir -p crmeb-docker/mysql/{data,conf} crmeb-docker/redis/data crmeb-docker/crmeb/{config,logs}

# 下载docker-compose.yml到crmeb-docker目录
wget -O crmeb-docker/docker-compose.yml https://example.com/crmeb-java-docker-compose.yml

# 启动服务
cd crmeb-docker &amp;&amp; docker-compose up -d4. 验证部署访问 http://服务器IP:8080 查看CRMEB管理后台登录页面检查容器状态：docker ps -a查看日志：docker logs -f crmeb-java三、生产环境高可用部署1. 集群架构设计负载均衡：Nginx或Traefik应用层：3个CRMEB Java实例（部署在不同物理机）数据层：MySQL主从复制 + Redis集群2. Docker Swarm部署示例version: &#039;3.8&#039;
services:
  crmeb-java:
    image: crmeb/crmeb-java:v4.4.2
    deploy:
      replicas: 3
      update_config:
        parallelism: 1
        delay: 10s
      restart_policy:
        condition: on-failure
    ports:
      - &quot;80:8080&quot;
    networks:
      - crmeb-network
    secrets:
      - db-password
      - redis-password

networks:
  crmeb-network:

secrets:
  db-password:
    external: true
  redis-password:
    external: true四、注意事项数据持久化：确保MySQL和Redis数据目录挂载到宿主机，避免容器重建导致数据丢失。配置优化：修改crmeb/config/application-prod.yml调整JVM参数（如-Xmx2g -Xms2g）调整MySQL配置（如innodb_buffer_pool_size=2G）安全加固：禁用不必要的端口暴露定期更新镜像（docker-compose pull &amp;&amp; docker-compose up -d）添加防火墙规则（如ufw allow 80/tcp）五、泉州地区部署建议云服务选择：中小型企业：阿里云ECS（4核8G）+ RDS MySQL（2核4G）+ Redis实例，月成本约1500元。大型企业：自建物理机集群（3台8核16G服务器），年成本约8-10万元。本地技术支持：与泉州本地Docker服务商合作（如泉州某科技公司），提供7×24小时运维服务。利用泉州PHP开发者社区资源，快速解决部署问题。六、常见问题与解决方案问题解决方案容器启动失败检查docker logs输出，确认数据库连接参数是否正确访问超时检查Nginx配置，调整proxy_connect_timeout和proxy_send_timeout参数内存溢出在docker-compose.yml中添加JVM_OPTS环境变量，如-Xmx1g -Xms1g数据库连接池耗尽修改application-prod.yml，增加spring.datasource.hikari.maximum-pool-size值（推荐15-20）通过Docker部署CRMEB Java版本，可显著降低部署复杂度和运维成本，尤其适合泉州地区技术团队规模较小的企业。建议在测试环境验证后再迁移至生产环境，并预留20%的硬件资源应对业务增长。CRMEB Java版本的官方Docker部署资源可通过以下渠道获取：一、官方文档指南CRMEB官方提供了完整的Docker部署文档，包含从环境准备到集群配置的全流程说明：文档链接：https://doc.crmeb.com/java/crmeb_java核心内容：Docker Compose配置示例（含MySQL、Redis、CRMEB Java服务）生产环境高可用架构设计（Nginx负载均衡+容器集群）镜像构建与版本管理策略常见问题排查（如端口冲突、内存溢出）二、GitHub仓库资源官方Java版本的GitHub仓库提供了Docker相关的配置文件和部署脚本：仓库地址：https://gitee.com/ZhongBangKeJi/crmeb_java关键文件：docker-compose.yml：基础单节点部署配置Dockerfile：自定义镜像构建模板application-prod.yml：生产环境配置模板三、镜像获取方式CRMEB Java版本的Docker镜像可通过以下两种方式获取：官方镜像仓库（推荐）：镜像地址：crmeb/crmeb-java:v4.4.2（需替换为最新版本）拉取命令：docker pull crmeb/crmeb-java:v4.4.2版本说明：通过标签（如v4.4.2）指定版本，可在官方文档中查看最新镜像版本自行构建镜像：从GitHub仓库下载代码后，执行以下命令构建：docker build -t crmeb-java:latest .优势：可根据项目需求定制依赖（如添加自定义插件）四、泉州地区部署优化建议网络加速：使用国内镜像源（如阿里云、USTC）加速镜像拉取：# 修改Docker配置文件 /etc/docker/daemon.json
{
  &quot;registry-mirrors&quot;: [&quot;https://docker.mirrors.ustc.edu.cn/&quot;]
}本地技术支持：与泉州本地技术团队合作（如厦门、福州的Java开发公司），降低沟通成本加入泉州PHP开发者社区，获取本地化技术资源五、验证与反馈部署验证：启动容器后访问 http://服务器IP:8080，检查登录页面是否正常加载执行 docker logs -f crmeb-java 查看服务日志，确认无报错信息使用Postman测试核心API接口（如商品列表、订单创建）版本更新：定期执行 docker-compose pull &amp;&amp; docker-compose up -d 更新镜像关注官方文档的版本更新说明，避免兼容性问题通过以上链接和资源，可快速完成CRMEB Java版本的Docker部署。建议在测试环境验证后再迁移至生产环境，并预留20%的硬件资源应对业务增长。</description>
</item>
<item rdf:about="https://zzs.tdcktz.com/index.php/archives/54/">
<title>用Docker compose部署pocketbase的配置文件和初始化管理员用户和密码的办法</title>
<link>https://zzs.tdcktz.com/index.php/archives/54/</link>
<dc:date>2025-04-30T05:05:00+00:00</dc:date>
<description>docker-compose.yml配置文件services:
  pocketbase:
    image: ghcr.nju.edu.cn/muchobien/pocketbase:latest
    container_name: pocketbase
    restart: unless-stopped
    ports:
      - &quot;127.0.0.1:8090:8090&quot;  # 仅本地访问
    environment:
      - POCKETBASE_DEBUG=false  # 生产环境禁用调试模式
    volumes:
      - ./pb_data:/pb_data
      - ./backups:/backups  # 备份目录
    healthcheck:  # 健康检查[3]()
      test: wget --no-verbose --tries=1 --spider http://127.0.0.1:8090/api/health || exit 1
      interval: 5s
      timeout: 5s
      retries: 5
    logging:  # 日志优化[2]()
      driver: &quot;json-file&quot;
      options:
        max-size: &quot;10m&quot;
        max-file: &quot;3&quot;
    deploy:  # 资源限制（兼容Swarm）
      resources:
        limits:
          cpus: &#039;1.0&#039;
          memory: 512M初始化管理员用户和密码的办法：运行下面的命令获取docker logs pocketbase</description>
</item>
<item rdf:about="https://zzs.tdcktz.com/index.php/archives/17/">
<title>好办法：将原来由docker-compose安装的stack交给Dockge中管理</title>
<link>https://zzs.tdcktz.com/index.php/archives/17/</link>
<dc:date>2025-04-08T00:19:00+00:00</dc:date>
<description>将原来由docker-compose安装的stack交给Dockge中管理，需要将 compose 文件移动到 stacks 目录中1，停止你的堆栈2，将您的 compose 文件移至 /opt/stacks//compose.yaml3，在 Dockge 中，单击右上角下拉菜单中的 “扫描堆栈文件夹” 按钮现在您应该在列表中看到您的堆栈来源</description>
</item>
</rdf:RDF>