mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-17 08:50:15 +01:00
* Rename .github/PULL_REQUEST_TEMPLATE/PULL-REQUEST.md to .github/pull_request_template.md fix: Pull Request Template Location * documents -> docs * Update windows_install.md Fix: Docker hyperlink * Update linux_install.md Fix: Layout (step 6) * Rename docs/contributions/code_of_conduct.md to CODE_OF_CONDUCT.md fix: Code of Conduct location according to GitHub's Guide * Update CODE_OF_CONDUCT.md Update: Contact info * Update README.md Update: Code of Conduct hyperlink in TOC * Update CODE_OF_CONDUCT.md Update: Link to ReadMe * Update CONTRIBUTORS.md update: add new name to the list * Update and rename docs/contributions/contributor_guidelines.md to CONTRIBUTING.md fix: change location according to GitHub's standards * Delete CONTRIBUTORS.md delete: contributor.md from root (already present in readme) * Update SECURITY.md * Update CONTRIBUTING.md Update discord link to point to rules * Update README.md Update discord link to point to rules * Update README.md fix: ToC
134 lines
4.9 KiB
Markdown
134 lines
4.9 KiB
Markdown
# Linux Installation
|
|
## **Recommended : [Docker Install](docker_install.md)**
|
|
|
|
##
|
|
|
|
## **Manual Installation**
|
|
|
|
## Prerequisites
|
|
|
|
Before installing ChatGPT-Clone, make sure your machine has the following prerequisites installed:
|
|
|
|
- Git: To clone the repository.
|
|
- Node.js: To run the application.
|
|
- MongoDB: To store the chat history.
|
|
|
|
## Installation Steps
|
|
|
|
## 1. Clone the repository:
|
|
|
|
```bash
|
|
git clone https://github.com/danny-avila/chatgpt-clone.git
|
|
```
|
|
|
|
## 2. Extract the content in your desired location:
|
|
|
|
```bash
|
|
cd chatgpt-clone
|
|
unzip chatgpt-clone.zip -d /usr/local/
|
|
```
|
|
|
|
Note: The above command extracts the files to "/usr/local/chatgpt-clone". If you want to install the files to a different location, modify the instructions accordingly.
|
|
|
|
## 3. Enable the Conversation search feature: (optional)
|
|
|
|
- Download MeiliSearch latest release from: https://github.com/meilisearch/meilisearch/releases
|
|
- Copy it to "/usr/local/chatgpt-clone/"
|
|
- Rename the file to "meilisearch"
|
|
- Open a terminal and navigate to "/usr/local/chatgpt-clone/"
|
|
- Run the following command:
|
|
|
|
```bash
|
|
./meilisearch --master-key=YOUR_MASTER_KEY
|
|
```
|
|
|
|
Note: Replace "YOUR_MASTER_KEY" with the generated master key, which you saved earlier.
|
|
|
|
## 4. Install Node.js:
|
|
|
|
Open a terminal and run the following commands:
|
|
|
|
```bash
|
|
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
|
|
sudo apt-get install -y nodejs
|
|
```
|
|
|
|
## 5. Create a MongoDB database:
|
|
|
|
- Navigate to https://www.mongodb.com/ and sign in or create an account.
|
|
- Create a new project.
|
|
- Build a Database using the free plan and name the cluster (example: chatgpt-clone).
|
|
- Use the "Username and Password" method for authentication.
|
|
- Add your current IP to the access list.
|
|
- Then in the Database Deployment tab click on Connect.
|
|
- In "Choose a connection method" select "Connect your application".
|
|
- Driver = Node.js / Version = 4.1 or later.
|
|
- Copy the connection string and save it somewhere (you will need it later).
|
|
|
|
## 6. Get your OpenAI API key
|
|
- Visit https://platform.openai.com/account/api-keys and save your API key somewhere safe (you will need it later)
|
|
|
|
## 7. Get your Bing Access Token
|
|
|
|
Please follow the **[updated instructions.](https://github.com/danny-avila/chatgpt-clone/issues/370#issuecomment-1560382302)**
|
|
|
|
~~Using MS Edge, navigate to bing.com~~
|
|
- ~~Make sure you are logged in~~
|
|
- ~~Open the DevTools by pressing F12 on your keyboard~~
|
|
- ~~Click on the tab "Application" (On the left of the DevTools)~~
|
|
- ~~Expand the "Cookies" (Under "Storage")~~
|
|
- ~~Copy the value of the "\_U" cookie~~
|
|
|
|
## 8. Create the ".env" File
|
|
|
|
You will need all your credentials, (API keys, access tokens, and MongoDB Connection String, MeiliSearch Master Key)
|
|
|
|
- Open "~/chatgpt-clone/api/.env.example" in a text editor
|
|
- At this line MONGO_URI="mongodb://127.0.0.1:27017/chatgpt-clone", replace mongodb://127.0.0.1:27017/chatgpt-clone with the MongoDB connection string you saved earlier, remove "&w=majority" at the end
|
|
- It should look something like this: "MONGO_URI="mongodb+srv://username:password@chatgpt-clone.lfbcwz3.mongodb.net/?retryWrites=true"
|
|
- At this line OPENAI_KEY= you need to add your OpenAI API key
|
|
- Add your Bing token to this line BINGAI_TOKEN= (needed for BingChat & Sydney)
|
|
- If you want to enable Search, SEARCH=TRUE if you do not want to enable search SEARCH=FALSE
|
|
- Add your previously saved MeiliSearch Master key to this line MEILI_MASTER_KEY= (the key is needed if search is enabled even on local install or you may encounter errors)
|
|
- Save the file as "~/chatgpt-clone/api/.env"
|
|
|
|
## Run the project
|
|
|
|
### Using the command line (in the root directory)
|
|
Setup the app:
|
|
1. Run `npm ci`
|
|
2. Run `npm run frontend`
|
|
|
|
## Start the app:
|
|
1. Run `npm run backend`
|
|
2. Run `meilisearch --master-key put_your_meilesearch_Master_Key_here` (Only if SEARCH=TRUE)
|
|
3. Visit http://localhost:3080 (default port) & enjoy
|
|
|
|
### Using a shell script
|
|
|
|
- Create a shell script to automate the starting process
|
|
- Open a text editor
|
|
- Paste the following code in a new document
|
|
- Put your MeiliSearch master key instead of "your_master_key_goes_here"
|
|
- Save the file as "/home/user/chatgpt-clone/chatgpt-clone.sh"
|
|
- You can make a shortcut of this shell script and put it anywhere
|
|
|
|
```
|
|
#!/bin/bash
|
|
# the meilisearch executable needs to be at the root of the chatgpt-clone directory
|
|
|
|
gnome-terminal --tab --title="MeiliSearch" --command="bash -c 'meilisearch --master-key your_master_key_goes_here'"
|
|
# ↑↑↑ meilisearch is the name of the meilisearch executable, put your own master key there
|
|
|
|
gnome-terminal --tab --title="ChatGPT-Clone" --working-directory=/home/user/chatgpt-clone/ --command="bash -c 'npm run backend'"
|
|
# this shell script goes at the root of the chatgpt-clone directory (/home/user/chatgpt-clone/)
|
|
```
|
|
|
|
## Update the app version
|
|
|
|
If you update the chatgpt-clone project files, manually redo the npm ci and npm run frontend steps.
|
|
|
|
##
|
|
|
|
|
|
## [Go Back to ReadMe](../../README.md)
|