FIXME
❗ Change usernames and passwords for PROD or internet-facing environments!
- Start postgresql
docker run -itd -e POSTGRES_USER=admin -e POSTGRES_PASSWORD=admin -p 5432:5432 -v ~/work/postgres:/var/lib/postgresql/data --name postgresql postgres
$ docker exec -it postgresql bash
-
PGPASSWORD=admin psql -U admin
" -
CREATE DATABASE scheduler;
-
\c scheduler;
-
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
- Start the application:
[email protected] EMAIL_API_KEY=<my api key> EMAIL_COMPANY=<my company> EMAIL_URL=<my email api> lein with-profile dev run
- Start the application with migration:
[email protected] EMAIL_API_KEY=<my api key> EMAIL_COMPANY=<my company> EMAIL_URL=<my email api> lein with-profile dev run --migrate
- Start dev server:
[email protected] EMAIL_API_KEY=<my api key> EMAIL_COMPANY=<my company> EMAIL_URL=<my email api> lein run-dev-w-migration
or[email protected] EMAIL_API_KEY=<my api key> EMAIL_COMPANY=<my company> EMAIL_URL=<my email api> lein run-dev
- Go to localhost:8080 to see a nice list in json!
- Read your app's source code at src/scheduler/service.clj. Explore the docs of functions that define routes and responses.
- Run your app's tests with
lein test
.
They are located at resources/migrations
.
Must be named in number sequenced order.
Run with: $ lein run migrate
lein test
To configure logging see config/logback.xml. By default, the app logs to stdout and logs/. To learn more about configuring Logback, read its documentation.
- Start a new REPL:
lein repl
- Start your service in dev-mode:
(def dev-serv (run-dev))
- Connect your editor to the running REPL session. Re-evaluated code will be seen immediately in the service.
Docker container support
- Configure your service to accept incoming connections (edit service.clj and add ::http/host "0.0.0.0" )
- Build an uberjar of your service:
lein uberjar
- Build a Docker image:
sudo docker build -t scheduler .
- Run your Docker image:
docker run -p 8080:8080 scheduler