首页
/ OhMyForm项目Docker Compose部署指南

OhMyForm项目Docker Compose部署指南

2025-07-10 05:35:11作者:胡唯隽

概述

OhMyForm是一个开源的在线表单构建工具,本文主要介绍如何使用Docker Compose文件来部署OhMyForm项目的后端服务环境。通过Docker容器化部署,可以大大简化环境配置过程,提高部署效率。

核心服务组件

该Docker Compose文件定义了OhMyForm项目运行所需的多个服务组件:

1. 数据库服务

文件提供了两种数据库选择方案:

MariaDB方案

  • 使用官方mariadb镜像
  • 数据持久化:将容器内的/var/lib/mysql映射到宿主机的./maria_data目录
  • 环境变量配置:
    • 设置root用户密码为root
    • 创建名为ohmyform的数据库
  • 端口映射:3306:3306

PostgreSQL方案

  • 使用postgres:10-alpine轻量级镜像
  • 数据持久化:将容器内的/var/lib/postgresql/data映射到宿主机的./pg_data目录
  • 环境变量配置:
    • 设置用户名为root,密码为root
    • 创建名为ohmyform的数据库
  • 端口映射:5432:5432

2. Redis服务

  • 使用官方redis镜像
  • 端口映射:6003:6379(将容器6379端口映射到宿主机6003端口)

3. 邮件服务(MailHog)

  • 使用mailhog/mailhog镜像
  • 提供邮件测试服务
  • 端口映射:
    • 6001:8025(Web界面)
    • 6004:1025(SMTP服务端口)

部署说明

  1. 数据库选择:开发者可以根据项目需求选择MariaDB或PostgreSQL作为数据库,默认配置中两者都启用,实际使用时可以注释掉不需要的数据库服务。

  2. 数据持久化:所有数据库服务都配置了数据卷映射,确保容器重启后数据不会丢失。

  3. 端口配置:各服务端口都做了映射配置,避免端口冲突问题。

  4. 环境变量:数据库连接信息通过环境变量配置,便于后续应用服务连接。

使用建议

  1. 生产环境部署时,建议修改默认的root密码,使用更安全的密码策略。

  2. 可以根据实际需求调整端口映射配置,避免与宿主机已有服务冲突。

  3. 对于测试环境,MailHog提供的邮件测试服务非常实用,可以避免配置真实邮件服务器。

  4. 文件中的api服务部分被注释掉了,实际部署时需要根据项目文档构建和配置api服务。

总结

该Docker Compose文件为OhMyForm项目提供了完整的后端服务环境配置,包括数据库、缓存和邮件服务等基础设施。通过简单的docker-compose up命令即可快速启动所有依赖服务,大大简化了开发环境的搭建过程。开发者可以根据实际需求灵活调整配置,满足不同场景下的部署需求。