This repository holds deployment assets and the public website for WebGME.
| Path | Purpose |
|---|---|
editor/ |
Docker Compose stack: WebGME app, MongoDB, and nginx (HTTPS + reverse proxy). |
www/ |
Static site and tooling used for webgme.org (e.g. extension registry updates). |
aws/ |
AWS-oriented helpers (cert renewal, backups, sample extraconfigs.js). See aws/README.md. |
Prerequisites: Docker with Compose (docker compose).
-
Shared host directory (mounted as
/dockersharein the WebGME container), e.g.:mkdir -p ~/dockershare/db ~/dockershare/ssl_certs
-
TLS certificates for nginx HTTPS: place
privkey.pemandfullchain.pemunder~/dockershare/ssl_certs/. For local development you can use self-signed certs or adjusteditor/nginx.conf(e.g.server_name, listeners) to match how you reach the stack. -
Static site volume:
editor/docker-compose.ymlmounts the marketing site at~/webgme.org/www/staticinto thewebservice. If your clone lives elsewhere, edit that path to point at this repo’swww/staticdirectory. -
Start the stack from the
editordirectory:cd editor docker compose up -d --buildThe first run builds images from
editor/Dockerfile(WebGME from npm, defaultwebgme@latest) andeditor/Dockerfile.nginx.webgme.org. Thewebservice exposes 80 and 443 on the host; the WebGME process listens on 8001 inside the Docker network and is reached via nginx (seeeditor/nginx.conf).
Set GME_ADMIN to username:password (e.g. admin:admin) in the webgme-server service environment in docker-compose.yml or via your orchestrator. After login, change the password at /profile/login on your editor URL.
To override settings, add ~/dockershare/extraconfigs.js exporting a function (config) => { ... }. See aws/extraconfigs.js for shape and editor/config/config.docker.js for how it is loaded. Restart the webgme-server container after changes.
WebGME is normally run behind a reverse proxy with TLS. The in-repo example is editor/nginx.conf. For pinning a specific WebGME version when building the image, use the webgme_repo build argument in editor/Dockerfile or use editor/update.sh on a server deployment (see aws/README.md). Release versions are listed on GitHub releases.