An identity and access management service using Elixir and Phoenix Framework.
If you just want to try this out, the easiest way is using Docker.
-
Clone this repo:
git clone git@github.com:rosswilson/turret-elixir.git && cd turret-elixir
-
Create a
.env
file with a long secret, this will be used to sign the session cookies:echo "SECRET_KEY_BASE=$(openssl rand -hex 32)" > .env
-
Generate a certificate to support HTTPS:
mkcert -cert-file priv/cert/selfsigned.pem --key-file priv/cert/selfsigned_key.pem localhost
-
Start the various Docker containers:
docker-compose up
-
In another terminal window, migrate the database:
docker-compose run web eval Turret.Release.migrate
-
Now open https://localhost:4000/ in your browser.
To start the application for development purposes:
- Generate local development HTTPS certificates
- Install dependencies with
mix deps.get
- Create and migrate your database with
mix ecto.setup
- Install Node.js dependencies with
yarn install
inside theassets
directory - Start Phoenix endpoint with
mix phx.server
Now you can visit https://localhost:4000
from your browser.
TODO
-
Elixir version
-
System dependencies
-
Configuration
-
Database creation
-
Database initialization
-
Services (job queues, cache servers, search engines, etc.)
TODO
- How to run the test suite
TODO
- Deployment instructions
MIT, enjoy 👋
Ross Wilson, @rossalexwilson on Twitter