
Deploy OhMyForm on Your Own Server
Create stunning embedable forms for recruiting, market research, surveys and more https://ohmyform.com/
Want to deploy OhMyForm on your server faster? Try Senate with one-command setup, automatic HTTPS and monitoring.
What is OhMyForm?
An open source alternative to TypeForm and Google Forms that can create stunning mobile-ready forms, surveys and questionnaires. With OhMyForm you'll get all the features you need to run, administer, analyze and distribute forms for free. More details: https://ohmyform.com/
Self-Host OhMyForm
Follow these steps to deploy on your own server.
Install Docker
Skip this step if Docker is already installed on your server.
curl -fsSL https://get.docker.com | sh
Configure
Customize the settings below. Defaults work for most cases.
General
Deploy
Copy the configuration and run it on your server.
services:
ohmyform:
image: ohmyform/ohmyform:0.9.9
environment:
ADMIN_EMAIL: ""
ADMIN_PASSWORD: 2471ca76332f0929f71593ca07fe2f110fcb361be1c43df7683872936ff7578e
ADMIN_USERNAME: ohmyadmin
CREATE_ADMIN: "TRUE"
MAILER_URI: smtp://ohmyform-mailhog:1025
MONGODB_URI: mongodb://ohmyform-mongo/ohmyform
PORT: "5000"
volumes:
- ohmyform-data:/data
ohmyform-mailhog:
image: mailhog/mailhog:v1.0.1
ohmyform-mongo:
image: mongo:4
volumes:
- ohmyform-mongo:/data/db
volumes:
ohmyform-data: {}
ohmyform-mongo: {}
Then run:
docker compose up -d
Access
Once started, access your app at http://localhost:5000
Why Self-Host OhMyForm?
Full Data Ownership
Your data stays on your servers. No third-party access.
No Monthly Fees
Pay only for your server. No per-seat or usage charges.
Complete Control
Customize, backup, and scale on your own terms.
Privacy & Compliance
Meet GDPR, HIPAA, or internal security requirements.
Technical Details
Docker Image
ohmyform/ohmyform:0.9.9Official Docs
ohmyform.comWant to go faster?
Try Senate! Senate handles Docker, HTTPS, updates, and monitoring for you. Deploy any of our 300+ apps with a single command.
Install on any Linux server:
sh -c "$(curl -sSL https://get.senate.sh)"