Installation
Authcore can be installed in most GNU/Linux distributions and in a number of cloud providers.
Deploying to Docker
A sample docker-compose file can be referenced in deployments/docker-compose.yml
.
To use Authcore in Docker, you need to alter several value in docker-compose.yml.
DATABASE_URL
refers to the mysql database with mysql credentials and database name.ADMIN_PASSWORD
refers to the admin user password that is used in first-time installation.ADMIN_EMAIL
orADMIN_PHONE
refers to the admin email / phone that is used for the admin account.AUTHCORE_CONFIG
refers to the config file that authcore uses and defaults to beconf/authcore.toml
.
To use a custom config file, you must setup the volumes in docker-compose file correctly to map your config file (authcore.toml
) to /app/conf
as shown in the example docker-compose.yml
.
For security, you MUST setup different variable in authcore.toml
. Refer to the configuration section for more details.
Deploying to Kubernetes using Helm
Install Helm
Follow the instructions to install Helm. Please note: the default Helm installation is insuecre. Follow this additional guide to secure Helm.
For a minimal installation:
Create a namespace for Authcore
Install Dependencies
MySQL
Install MySQL:
After installation, you need to create a secret for database URL providing to Authcore.
<database_url>
is mysql://root:<mysql-root-password>@<mysql_service>/authcore?parseTime=true
And put the <secret-name>
in mysql.database_url
.
Redis
Redis can be installed via dependency. If you want to install redis by your own configuration, you can do it by following.
Install Redis (optional):
You must also set tags.install_redis
and configuration in redis
in values.yaml
to false
if you choose to customize install redis.
Install Authcore using Helm
Set up secret for accessing Authcore docker registry:
Change the values in values.yaml
to override default values for OAuth configuration, root keys etc.
TLS configuration:
First add the TLS secret:
then refer the TLS secret (and the hostname) in values.yaml
for the nginx ingress, a ingress controller must be installed.
Refer to https://kubernetes.github.io/ingress-nginx/deploy/
for the ingress controller deployment guide.
Last updated