2.8 KiB
title | description | lead | date | draft | images | menu | weight | toc | ||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Environment | How to configure your development environment. | This section covers the environment we recommend for development. | 2022-06-15T17:51:47+10:00 | false |
|
220 | true |
Authelia and its development workflow can be tested with Docker and Docker Compose on Linux.
Setup
In order to build and contribute to Authelia, you need to make sure the following are installed in your environment:
- go (v1.18 or greater)
- Docker
- Docker Compose
- Node.js (v16 or greater)
- pnpm
The additional tools are recommended:
- golangci-lint
- goimports-reviser
- yamllint
- Either the VSCodium or GoLand IDE
Scripts
There is a scripting context provided with Authelia which can easily be configured. It allows running integration suites and various other tasks. Read more about it in the authelia-scripts reference guide.
FAQ
Do you support development under Windows or OSX?
At the present time this is not officially supported. Some of the maintainers utilize Windows however running suites under Windows or OSX is not something that is currently possible to do easily. As such we recommend utilizing Linux.
What version of Docker and docker-compose should I use?
We have no firm recommendations on the version to use but we actively use the latest versions available to us in the distributions of our choice. As long as it's a modern version it should be sufficient for the development environment.
How can I serve my application under example.com?
Don't worry, you don't need to own the domain example.com
to test Authelia. Copy the following lines in
your /etc/hosts
:
192.168.240.100 home.example.com
192.168.240.100 login.example.com
192.168.240.100 singlefactor.example.com
192.168.240.100 public.example.com
192.168.240.100 secure.example.com
192.168.240.100 mail.example.com
192.168.240.100 mx1.mail.example.com
The IP address 192.168.240.100
is the IP attributed by Docker to the reverse proxy. Once added you can access the
listed subdomains from your browser, and they will be served by the reverse proxy.