DEPLOYMENT

Docker Compose

Docker Compose is the recommended way to run Oh My School containerized alongside its database.

Step 1: Download the Compose File

curl -O https://raw.githubusercontent.com/sooluh/oms/main/compose.yml

Alternatively, use the compose.yml file from the repository.

Step 2: Setup your .env File

cp .env.example .env

Edit variables in .env as required (see Single Container settings).

Step 3: Start the Stack

docker compose up -d

Log in with the default admin credentials listed in the Single Container guide.

Step 4: Managing the Container

# Stop the stack
docker compose down

# Update to the latest version
docker compose pull && docker compose up -d

[!NOTE-ALERT] By default, compose.yml does not expose host ports to prevent conflicts when running behind a reverse proxy (like Caddy, Nginx, or Traefik) sharing the same Docker network. If you wish to expose the container directly to a specific host port, add a ports section to compose.yml under the oms service:

ports:
  - '8000:80'

Still have questions?

If you could not find what you were looking for, the community is here to help on GitHub Discussions.

Ask the Community