mirror of
https://github.com/Infisical/infisical.git
synced 2026-01-13 09:28:01 -05:00
85 lines
2.8 KiB
Plaintext
85 lines
2.8 KiB
Plaintext
---
|
||
title: 'Local development'
|
||
description: 'This guide will help you set up and run Infisical in local development.'
|
||
---
|
||
|
||
## Fork and clone the repo
|
||
|
||
[Fork](https://docs.github.com/en/get-started/quickstart/fork-a-repo) the [repository](https://github.com/Infisical/infisical) to your own GitHub account and then [clone](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) it to your local device.
|
||
|
||
Once, you've done that, create a new branch:
|
||
|
||
```console
|
||
git checkout -b MY_BRANCH_NAME
|
||
```
|
||
|
||
## Set up environment variables
|
||
|
||
|
||
Start by creating a .env file at the root of the Infisical directory then copy the contents of the file below into the .env file.
|
||
|
||
<Accordion title=".env file content">
|
||
```env
|
||
# Keys
|
||
# Required key for platform encryption/decryption ops
|
||
ENCRYPTION_KEY=6c1fe4e407b8911c104518103505b218
|
||
|
||
# JWT
|
||
# Required secrets to sign JWT tokens
|
||
JWT_SIGNUP_SECRET=3679e04ca949f914c03332aaaeba805a
|
||
JWT_REFRESH_SECRET=5f2f3c8f0159068dc2bbb3a652a716ff
|
||
JWT_AUTH_SECRET=4be6ba5602e0fa0ac6ac05c3cd4d247f
|
||
JWT_SERVICE_SECRET=f32f716d70a42c5703f4656015e76200
|
||
|
||
# MongoDB
|
||
# Backend will connect to the MongoDB instance at connection string MONGO_URL which can either be a ref
|
||
# to the MongoDB container instance or Mongo Cloud
|
||
# Required
|
||
MONGO_URL=mongodb://root:example@mongo:27017/?authSource=admin
|
||
|
||
# Optional credentials for MongoDB container instance and Mongo-Express
|
||
MONGO_USERNAME=root
|
||
MONGO_PASSWORD=example
|
||
|
||
# Website URL
|
||
# Required
|
||
SITE_URL=http://localhost:8080
|
||
|
||
# Mail/SMTP
|
||
SMTP_HOST='smtp-server'
|
||
SMTP_PORT='1025'
|
||
SMTP_NAME='local'
|
||
SMTP_USERNAME='team@infisical.com'
|
||
SMTP_PASSWORD=
|
||
```
|
||
</Accordion>
|
||
|
||
<Warning>
|
||
The pre-populated environment variable values above are meant to be used in development only. They should never be used in production.
|
||
</Warning>
|
||
|
||
View all available [environment variables](https://infisical.com/docs/self-hosting/configuration/envars) and guidance for each.
|
||
|
||
## Starting Infisical for development
|
||
|
||
We use Docker to spin up all required services for Infisical in local development. If you are unfamiliar with Docker, don’t worry, all you have to do is install Docker for your
|
||
machine and run the command below to start up the development server.
|
||
|
||
#### Start local server
|
||
|
||
```bash
|
||
docker-compose -f docker-compose.dev.yml up --build --force-recreate
|
||
```
|
||
#### Access local server
|
||
|
||
Once all the services have spun up, browse to http://localhost:8080. To sign in, you may use the default credentials listed below.
|
||
|
||
Email: `test@localhost.local`
|
||
Password: `testInfisical1`
|
||
|
||
#### Shutdown local server
|
||
|
||
```bash
|
||
# To stop environment use Control+C (on Mac) CTRL+C (on Win) or
|
||
docker-compose -f docker-compose.dev.yml down
|
||
``` |