mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-09-22 13:39:35 +00:00
update linux docs
This commit is contained in:
@@ -1,102 +1,124 @@
|
||||
---
|
||||
title: "Installation"
|
||||
description: "Learn how to deploy Infisical using linux package."
|
||||
description: "Learn how to deploy Infisical using the Linux package"
|
||||
---
|
||||
|
||||
Infisical can be deployed on Linux virtual machines without containers using our Linux packages. Currently, we support Linux systems running on AMD64 architecture (ARM coming soon).
|
||||
|
||||
This standalone deployment uses a "Bring Your Own Database" (BYOD) approach, meaning you'll need to provide your own PostgreSQL and Redis databases for Infisical services. These databases are not included in the package.
|
||||
Infisical can be deployed on Linux virtual machines without the need for containers using our standalone Linux packages.
|
||||
These packages are available in both .deb (for Debian-based systems) and .rpm (for RHEL-based systems) formats.
|
||||
The installation includes the Infisical service, along with a CLI tool (infisical-ctl) to help you manage configurations, startup, and application logging.
|
||||
This approach is ideal for environments where containerization isn't desired, while still providing a lightweight deployment option.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Before beginning the installation, ensure you have:
|
||||
This installation method only provides the Infisical application. You are responsible for configuring both PostgreSQL and Redis, either by using managed services (e.g., AWS RDS, Azure Database, GCP Cloud SQL/Memorystore) or by deploying them manually in your on-prem environment.
|
||||
Please ensure you have the following before beginning installation of Infisical:
|
||||
|
||||
- A server running a linux-based operating system (Ubuntu, Debian) or RHEL-based system
|
||||
- A PostgreSQL database instance
|
||||
- A Redis database instance
|
||||
- A Linux server running a Debian/Ubuntu or RHEL-based distribution
|
||||
- A running PostgreSQL database instance
|
||||
- A running Redis database instance
|
||||
|
||||
## Installation Steps
|
||||
|
||||
<Steps>
|
||||
<Step title="Install the Infisical Package">
|
||||
Choose your operating system below to install Infisical:
|
||||
|
||||
<Tabs>
|
||||
<Step title="Install the Infisical Package">
|
||||
Select your Linux distribution to get started. Only AMD64-based systems are supported at this time, ARM support is coming soon.
|
||||
|
||||
<Tabs>
|
||||
|
||||
<Tab title="Debian/Ubuntu">
|
||||
First, add the Infisical repository:
|
||||
```bash
|
||||
curl -1sLf \
|
||||
'https://dl.cloudsmith.io/public/infisical/infisical-core/setup.deb.sh' \
|
||||
| sudo -E bash
|
||||
```
|
||||
Add the Infisical repository:
|
||||
```bash
|
||||
curl -1sLf 'https://dl.cloudsmith.io/public/infisical/infisical-core/setup.deb.sh' | sudo -E bash
|
||||
```
|
||||
|
||||
Then install Infisical:
|
||||
```bash
|
||||
sudo apt-get update && sudo apt-get install -y infisical-core
|
||||
```
|
||||
|
||||
> **Note**: For production environments, we strongly recommend installing a specific version of the package to maintain consistency across reinstalls. View available versions at [Infisical Package Versions](https://cloudsmith.io/~infisical/repos/infisical-core/packages/).
|
||||
Install Infisical:
|
||||
```bash
|
||||
sudo apt-get update && sudo apt-get install -y infisical-core
|
||||
```
|
||||
|
||||
> **Note**: For production use, we recommend locking to a specific version to ensure consistency. [View available versions](https://cloudsmith.io/~infisical/repos/infisical-core/packages/).
|
||||
</Tab>
|
||||
|
||||
<Tab title="RedHat/CentOS/Amazon Linux">
|
||||
First, add the Infisical repository:
|
||||
```bash
|
||||
curl -1sLf \
|
||||
'https://dl.cloudsmith.io/public/infisical/infisical-core/setup.rpm.sh' \
|
||||
| sudo -E bash
|
||||
```
|
||||
Add the Infisical repository:
|
||||
```bash
|
||||
curl -1sLf 'https://dl.cloudsmith.io/public/infisical/infisical-core/setup.rpm.sh' | sudo -E bash
|
||||
```
|
||||
|
||||
Then install Infisical:
|
||||
```bash
|
||||
sudo yum install infisical-core
|
||||
```
|
||||
|
||||
> **Note**: For production environments, we strongly recommend installing a specific version of the package to maintain consistency across reinstalls. View available versions at [Infisical Package Versions](https://cloudsmith.io/~infisical/repos/infisical-core/packages/).
|
||||
Install Infisical:
|
||||
```bash
|
||||
sudo yum install infisical-core
|
||||
```
|
||||
|
||||
> **Note**: For production use, we recommend locking to a specific version to ensure consistency. [View available versions](https://cloudsmith.io/~infisical/repos/infisical-core/packages/).
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
To verify the installation, run:
|
||||
</Tabs>
|
||||
|
||||
```bash
|
||||
infisical-ctl help
|
||||
```
|
||||
Verify the installation:
|
||||
```bash
|
||||
infisical-ctl help
|
||||
```
|
||||
</Step>
|
||||
|
||||
</Step>
|
||||
<Step title="Create the Configuration File">
|
||||
Create an `infisical.rb` file in the `/etc/infisical` directory. This file will contain your database connections and other configuration settings.
|
||||
<Step title="Create the Configuration File">
|
||||
Create an `infisical.rb` file at `/etc/infisical`. This file contains your database connection strings and other runtime settings.
|
||||
|
||||
<Accordion title="Example Configuration">
|
||||
```ruby
|
||||
# Important: Replace these values with secure keys in production
|
||||
infisical_core['ENCRYPTION_KEY'] = '6c1fe4e407b8911c104518103505b218'
|
||||
infisical_core['AUTH_SECRET'] = '5lrMXKKWCVocS/uerPsl7V+TX/aaUaI7iDkgl3tSmLE='
|
||||
```ruby
|
||||
# Important: Replace with secure values in production
|
||||
infisical_core['ENCRYPTION_KEY'] = '6c1fe4e407b8911c104518103505b218'
|
||||
infisical_core['AUTH_SECRET'] = '5lrMXKKWCVocS/uerPsl7V+TX/aaUaI7iDkgl3tSmLE='
|
||||
|
||||
# Database connection strings
|
||||
infisical_core['DB_CONNECTION_URI'] = 'postgres://infisical:infisical@localhost:5432/infisical'
|
||||
infisical_core['REDIS_URL'] = 'redis://localhost:6379'
|
||||
```
|
||||
</Accordion>
|
||||
# Example database connection strings
|
||||
infisical_core['DB_CONNECTION_URI'] = 'postgres://<db-username>:<db-password>@<db-host>:<db-port>/<db-name>'
|
||||
infisical_core['REDIS_URL'] = 'redis://<redis-host>:<redis-port>'
|
||||
```
|
||||
|
||||
For a complete list of configuration options, visit our [configuration variables documentation](/self-hosting/configuration/envars).
|
||||
See the full list of options in our [configuration documentation](/self-hosting/configuration/envars).
|
||||
</Step>
|
||||
|
||||
</Step>
|
||||
<Step title="Start Infisical">
|
||||
1. Run the following command to start the Infisical server:
|
||||
```bash
|
||||
infisical-ctl reconfigure
|
||||
```
|
||||
By default, the server will run on port `8080`. You can modify this in the `infisical.rb` configuration file.
|
||||
<Step title="Start Infisical">
|
||||
1. Start the Infisical service:
|
||||
```bash
|
||||
infisical-ctl reconfigure
|
||||
```
|
||||
The server runs on port `8080` by default (customizable in `infisical.rb`).
|
||||
|
||||
2. Check the service status:
|
||||
|
||||
Check the service status:
|
||||
```bash
|
||||
infisical-ctl status
|
||||
```
|
||||
|
||||
View the service logs in real-time:
|
||||
```bash
|
||||
infisical-ctl tail
|
||||
```
|
||||
</Step>
|
||||
|
||||
2. Monitor your deployment:
|
||||
- Check the application status:
|
||||
```bash
|
||||
infisical-ctl status
|
||||
```
|
||||
- View real-time logs:
|
||||
```bash
|
||||
infisical-ctl tail
|
||||
```
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
## Platform Support
|
||||
|
||||
### Microsoft Windows
|
||||
Infisical is built for Linux-based systems. It is not supported on Microsoft Windows, and we do not plan to support it in the near future. For Windows users, consider running Infisical in a virtual machine or WSL2 environment.
|
||||
|
||||
### Unsupported Linux Distributions and Unix-like Systems
|
||||
Infisical is not tested or officially supported on the following:
|
||||
|
||||
- Arch Linux
|
||||
- Fedora
|
||||
- FreeBSD
|
||||
- Gentoo
|
||||
- macOS
|
||||
|
||||
We recommend sticking to officially supported distributions for the best experience.
|
||||
|
||||
## Linux vs Containerized Deployments
|
||||
|
||||
Infisical is a stateless application, which means it can be easily scaled and redeployed without maintaining internal state between instances.
|
||||
|
||||
If your use case requires rolling updates, self-healing, or auto-scaling, we recommend deploying Infisical in a containerized environment such as Kubernetes/OpenShift, or using managed container orchestration services like AWS ECS or Google Cloud Run.
|
||||
These platforms offer built-in capabilities for high availability and help simplify operational overhead for your deployment.
|
||||
Reference in New Issue
Block a user