Docker
Use the following Docker Compose commands to get up and running quickly with FusionAuth, PostgreSQL, and Opensearch:
-
Install the prerequisites:
- On macOS and Windows, one of the following container management tools:
- Docker desktop
- OrbStack (to use Orbstack for
docker composecommands after install, rundocker context use orbstack) - Podman (in the commands below, replace
dockerwithpodman)
- On Linux, Docker 23 or later
- On macOS and Windows, one of the following container management tools:
-
Download the
docker-compose.ymland.envfiles:curl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/docker-compose.yml > docker-compose.yml && \ curl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/.env > .envcurl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/docker-compose.yml > docker-compose.yml && \ curl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/.env > .envInvoke-WebRequest -UseBasicParsing https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/docker-compose.yml -OutFile docker-compose.yml Invoke-WebRequest -UseBasicParsing https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/.env -OutFile .env -
Start the FusionAuth container:
docker compose up -d -
Visit http://localhost:9011 to access the Admin UI.
-
Congratulations, you have a working instance of FusionAuth! To set up login for an application, see our First Time Setup guide.
FusionAuth CLI
Use the following commands to create a new instance of FusionAuth, complete with all the dependencies you need to run it:
-
Install the prerequisites:
- On macOS and Windows, one of the following container management tools:
- Docker desktop
- OrbStack (to use Orbstack for
docker composecommands after install, rundocker context use orbstack) - Podman (in the commands below, replace
dockerwithpodman)
- On Linux, Docker 23 or later
- On macOS and Windows, one of the following container management tools:
-
Install the FusionAuth CLI:
npm install @fusionauth/cli -
Run the following command to create a Docker container that contains a FusionAuth instance, a database, an API key, and an application:
npx fusionauth kickstart:install -
Start the Docker container:
npx fusionauth kickstart:start -
Visit http://localhost:9011 to access the Admin UI.
-
Congratulations, you have a working instance of FusionAuth! To set up login for an application, see our First Time Setup guide.
Docker Compose
Use the following Docker Compose commands to get up and running quickly with FusionAuth, PostgreSQL, and Opensearch:
-
Install the prerequisites:
- On macOS and Windows, one of the following container management tools:
- Docker desktop
- OrbStack (to use Orbstack for
docker composecommands after install, rundocker context use orbstack) - Podman (in the commands below, replace
dockerwithpodman)
- On Linux, Docker 23 or later
- On macOS and Windows, one of the following container management tools:
-
Download the
docker-compose.ymland.envfiles:curl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/docker-compose.yml > docker-compose.yml && \ curl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/.env > .envcurl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/docker-compose.yml > docker-compose.yml && \ curl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/.env > .envInvoke-WebRequest -UseBasicParsing https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/docker-compose.yml -OutFile docker-compose.yml Invoke-WebRequest -UseBasicParsing https://raw.githubusercontent.com/FusionAuth/fusionauth-containers/main/docker/fusionauth/.env -OutFile .env -
Start the FusionAuth container:
docker compose up -d -
Visit http://localhost:9011 to access the Admin UI.
-
Congratulations, you have a working instance of FusionAuth! To set up login for an application, see our First Time Setup guide.
Docker
Use the following Docker commands to start just FusionAuth without a database. You'll need to install and configure a database manually.
-
Install the FusionAuth Docker container:
docker pull fusionauth/fusionauth-app -
Start the Docker container:
docker run -it -p 9011:9011 --add-host host.docker.internal:host-gateway { kickstartEnabled && "-e FUSIONAUTH_APP_KICKSTART_FILE=\"/usr/local/fusionauth/kickstart/kickstart.json\" --mount type=bind,src=./kickstart,dst=/usr/local/fusionauth/kickstart " }fusionauth/fusionauth-app -
Open http://localhost:9011 in your browser.
Homebrew
Copy and paste each command below into a terminal to install using Homebrew. You'll also need to manually install a database for FusionAuth to work.
-
Tap the FusionAuth package:
brew tap fusionauth/homebrew-fusionauth</code> -
Install the FusionAuth tap:
brew install fusionauth-app</code> -
Start the FusionAuth service:
brew services start fusionauth-app</code> -
Visit http://localhost:9011 to open the Admin UI.
macOS package
Copy and paste the code below into a terminal and we'll do the rest. This installation method installs the FusionAuth ZIP packages into the current working directory. You'll also need to manually install a database for FusionAuth to work.
-
Download and install the ZIP files
curl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-install/master/install.sh | bash -s && \ cd fusionauth -
Start FusionAuth:
bin/startup.sh -
Open http://localhost:9011 in your browser.
Package
Copy and paste the code below and we'll do the rest (feel free to read the install scripts first). This installation method installs the FusionAuth ZIP packages into the current working directory. You'll also need to manually install a database for FusionAuth to work.
-
Download and install the ZIP files
curl -fsSL https://raw.githubusercontent.com/FusionAuth/fusionauth-install/master/install.sh | bash -s && \ cd fusionauth -
Start FusionAuth
bin/startup.sh -
Open http://localhost:9011 in your browser.
Debian
Follow the steps below to install FusionAuth on a Debian/Ubuntu style Linux. This installation method installs the FusionAuth platform packages (DEBs) and will require sudo or root access. This command assumes you use the bash shell. You'll also need to manually install a database for FusionAuth to work.
-
Run the following commands:
VERSION=$(curl -fsSL https://license.fusionauth.io/api/latest-version) && \ curl -fsSL https://files.fusionauth.io/products/fusionauth/${VERSION}/fusionauth-app_${VERSION}-1_all.deb > fusionauth-app_${VERSION}-1_all.deb && \ sudo dpkg -i fusionauth-app_${VERSION}-1_all.deb && \ sudo systemctl start fusionauth-app -
Open http://localhost:9011 in your browser.
Red Hat
Follow the steps below to install FusionAuth on Red Hat or other RPM-based distribution. This installation method installs the FusionAuth platform packages (RPMs) and will require sudo or root access. This command assumes you use the bash shell. You'll also need to manually install a database for FusionAuth to work.
-
Run the following commands:
VERSION=$(curl -fsSL https://license.fusionauth.io/api/latest-version) && \ curl -fsSL https://files.fusionauth.io/products/fusionauth/${VERSION}/fusionauth-app-${VERSION}-1.noarch.rpm > fusionauth-app-${VERSION}-1.noarch.rpm && \ sudo rpm -i fusionauth-app-${VERSION}-1.noarch.rpm && \ sudo systemctl start fusionauth-app -
Open http://localhost:9011 in your browser.
Windows
Copy and paste the code below into PowerShell and we'll do the rest (feel free to read the install scripts first). This installation method installs the FusionAuth ZIP packages into the current working directory. You'll also need to manually install a database for FusionAuth to work.
-
Download and install the ZIP files
Invoke-WebRequest -UseBasicParsing -Uri https://raw.githubusercontent.com/FusionAuth/fusionauth-install/main/install.ps1 | iex cd fusionauth -
Start FusionAuth
bin\startup.ps1 -
Open http://localhost:9011 in your browser.
Windows Subsystem for Linux 2
Follow the Microsoft documentation to install Debian/Ubuntu using WSL 2 and then follow the Linux install directions by clicking the Linux tab above.
Helm Package Manager
Follow the steps below to install FusionAuth on Kubernetes using Helm.
You'll need to update values.yml with database and Elasticsearch configuration information. For more information, see our kubernetes installation instructions.
-
Run the following commands:
helm repo add fusionauth https://fusionauth.github.io/charts && \ curl -o values.yaml https://raw.githubusercontent.com/FusionAuth/charts/master/chart/values.yaml && \ helm install my-release fusionauth/fusionauth -f values.yaml && \ export SVC_NAME=$(kubectl get svc --namespace default -l "app.kubernetes.io/name=fusionauth,app.kubernetes.io/instance=my-release" -o jsonpath="{.items[0].metadata.name}") && \ kubectl port-forward svc/$SVC_NAME 9011:9011 -
Open http://localhost:9011 in your browser.
minikube
Follow the steps below to install FusionAuth on Kubernetes using Helm. You'll need to have a running kubernetes cluster; for full cluster setup instructions, see our minikube documentation.
You'll need to update values.yml with database and Elasticsearch configuration information. For more information, see our kubernetes installation instructions.
-
Run the following commands:
helm repo add fusionauth https://fusionauth.github.io/charts && \ curl -o values.yaml https://raw.githubusercontent.com/FusionAuth/charts/master/chart/values.yaml && \ helm install my-release fusionauth/fusionauth -f values.yaml && \ export SVC_NAME=$(kubectl get svc --namespace default -l "app.kubernetes.io/name=fusionauth,app.kubernetes.io/instance=my-release" -o jsonpath="{.items[0].metadata.name}") && \ kubectl port-forward svc/$SVC_NAME 9011:9011 -
Open http://localhost:9011 in your browser.
Google Kubernetes Engine
Follow the steps below to install FusionAuth on Kubernetes using Helm. You'll need to have a running kubernetes cluster; for full cluster setup instructions, see our [GKE documentation](https://fusionauth.io/docs/get-started/download-and-install/kubernetes/gke.
You'll need to update values.yml with database and Elasticsearch configuration information. For more information, see our kubernetes installation instructions.
-
Run the following commands:
helm repo add fusionauth https://fusionauth.github.io/charts && \ curl -o values.yaml https://raw.githubusercontent.com/FusionAuth/charts/master/chart/values.yaml && \ helm install my-release fusionauth/fusionauth -f values.yaml && \ export SVC_NAME=$(kubectl get svc --namespace default -l "app.kubernetes.io/name=fusionauth,app.kubernetes.io/instance=my-release" -o jsonpath="{.items[0].metadata.name}") && \ kubectl port-forward svc/$SVC_NAME 9011:9011 -
Open http://localhost:9011 in your browser.
Microsoft Azure Kubernetes Service
Follow the steps below to install FusionAuth on Kubernetes using Helm. You'll need to have a running kubernetes cluster; for full cluster setup instructions, see our AKS documentation.
You'll need to update values.yml with database and Elasticsearch configuration information. For more information, see our kubernetes installation instructions.
-
Run the following commands:
helm repo add fusionauth https://fusionauth.github.io/charts && \ curl -o values.yaml https://raw.githubusercontent.com/FusionAuth/charts/master/chart/values.yaml && \ helm install my-release fusionauth/fusionauth -f values.yaml && \ export SVC_NAME=$(kubectl get svc --namespace default -l "app.kubernetes.io/name=fusionauth,app.kubernetes.io/instance=my-release" -o jsonpath="{.items[0].metadata.name}") && \ kubectl port-forward svc/$SVC_NAME 9011:9011 -
Open http://localhost:9011 in your browser.
Amazon Elastic Kubernetes Service
Follow the steps below to install FusionAuth on Kubernetes using Helm. You'll need to have a running kubernetes cluster; for full cluster setup instructions, see our EKS documentation.
You'll need to update values.yml with database and Elasticsearch configuration information. For more information, see our kubernetes installation instructions
-
Run the following commands:
helm repo add fusionauth https://fusionauth.github.io/charts && \ curl -o values.yaml https://raw.githubusercontent.com/FusionAuth/charts/master/chart/values.yaml && \ helm install my-release fusionauth/fusionauth -f values.yaml && \ export SVC_NAME=$(kubectl get svc --namespace default -l "app.kubernetes.io/name=fusionauth,app.kubernetes.io/instance=my-release" -o jsonpath="{.items[0].metadata.name}") && \ kubectl port-forward svc/$SVC_NAME 9011:9011 -
Open http://localhost:9011 in your browser.
FusionAuth Cloud
You can sign up for a free trial of FusionAuth running in our fully managed Cloud. Feel free to open an issue in GitHub if you find any issues.
start free trial