# writefreely > An open source platform for building a writing space on the web. * **Category**: Apps * **Status**: 2, beta * **Image**: [`writefreely`](https://git.coopcloud.tech/coop-cloud-chaos-patchs/docker-writefreely), 1, Co-op Cloud custom image * **Healthcheck**: 3 * **Backups**: 1 * **Email**: 3 * **Tests**: No * **SSO**: 1 ## Basic usage 1. Set up Docker Swarm and `abra` 2. Deploy `coop-cloud/traefik` 3. `abra app new writefreely` 4. `abra app config ` - be sure to change `` to something that resolves to your coop-cloud server. - For more info about the config options, see the [writefreely docs](https://writefreely.org/docs/main/admin/config). 5. `abra app deploy ` 6. Once it's running, if you are not using SSO, set up a local admin user by running this command: ``` abra app run app -- writefreely -c /usr/share/writefreely/config.ini user create --admin : ``` ## Keycloak setup For the **OAUTH_HOST** config, it uses this format: `https://keycloak.example.com/auth/realms//protocol/openid-connect`. To set the client secret: `abra app secret insert oauth_client_secret v1` ## MariaDB By default, this recipe uses sqlite. If you wish to use MariaDB instead: 1. When creating the app, you need the `--secrets` flag: `abra app new writefreely --secrets` 2. Run `abra app config ` and follow the instructions to uncomment four lines. 3. `abra app deploy ` ## Acknowledgements Thanks to [@knoflook](https://git.coopcloud.tech/knoflook) for packaging work :heart: