readme and env example updates

This commit is contained in:
subnub
2025-02-28 23:22:57 -05:00
parent 171377020c
commit 3cd3132d18
4 changed files with 63 additions and 50 deletions
+4 -2
View File
@@ -1,6 +1,9 @@
# Either remove the .example from the end of this filename.
# Or create a new file with the same name, but without the .example extension.
# NOTE: If you are using docker, you should provide these env variables during the docker run command instead.
# But you can still use this file as a guide.
# MongoDB URL: Connection string for your MongoDB database
# example: mongodb://localhost:27017/mydrive
MONGODB_URL=
@@ -34,8 +37,7 @@ HTTP_PORT=
HTTPS_PORT=
# URL (optional): The URL to run the server on.
# Most likely not needed, but useful if you are running docker or such
# And need to bind to 0.0.0.0 instead.
# Most likely not needed, this changes the ip address/url express listens on.
URL=
# Email verifcation (optional): If you want to enable email verification configure as so.
+4 -2
View File
@@ -1,6 +1,9 @@
# Either remove the .example from the end of this filename.
# Or create a new file with the same name, but without the .example extension.
# NOTE: If you are using docker, you should provide these env variables during the docker run command instead.
# But you can still use this file as a guide.
# MongoDB URL: Connection string for your MongoDB database
# example: mongodb://localhost:27017/mydrive
MONGODB_URL=
@@ -34,8 +37,7 @@ HTTP_PORT=
HTTPS_PORT=
# URL (optional): The URL to run the server on.
# Most likely not needed, but useful if you are running docker or such
# And need to bind to 0.0.0.0 instead.
# Most likely not needed, this changes the ip address/url express listens on.
URL=
# Email verifcation (optional): If you want to enable email verification configure as so.
+4 -2
View File
@@ -1,6 +1,9 @@
# Either remove the .example from the end of this filename.
# Or create a new file with the same name, but without the .example extension.
# NOTE: If you are using docker, you should provide these env variables during the docker run command instead.
# But you can still use this file as a guide.
# MongoDB URL: Connection string for your MongoDB database
# example: mongodb://localhost:27017/mydrive
MONGODB_URL=
@@ -34,8 +37,7 @@ HTTP_PORT=
HTTPS_PORT=
# URL (optional): The URL to run the server on.
# Most likely not needed, but useful if you are running docker or such
# And need to bind to 0.0.0.0 instead.
# Most likely not needed, this changes the ip address/url express listens on.
URL=
# Email verifcation (optional): If you want to enable email verification configure as so.
+51 -44
View File
@@ -12,8 +12,8 @@ MyDrive is an Open Source cloud file storage server (Similar To Google Drive). H
- [Features](#features)
- [Tech stack](#tech-stack)
- [Installation (non docker)](#installation)
- [Docker installation](#docker)
- [Docker image](#docker)
- [Manual installation](#installation)
- [Common installation issues](#common-installation-issues)
- [Screenshots](#screenshots)
- [Video](#video)
@@ -56,7 +56,55 @@ MyDrive is an Open Source cloud file storage server (Similar To Google Drive). H
<span id="installation"></span>
## 💻 Installation
## 🐳 Docker image
Required:
- Docker
- MongoDB (Unless using a service like Atlas)
<br/>
Run the following command to download the latest docker image:
```javascript
docker pull kylehoell/mydrive:latest
```
You must provide enviroment variables for the docker image to work. You can supply these during the docker run command instead of creating the env file. <br />
> [backend/config](backend/config) -> Backend Enviroment Variables
You must also provide a volume for the image if you are using a filesystem database or if you want to use the generate video thumbnails feature. Volumes should be mounted to /data/ and /temp/ For example:
```javascript
-v /path/example/mydrive/data/:/data/ -v /path/example/mydrive/temp/:/temp/
```
/data/: This is where the encrypted files will be stored.
/temp/: Where files will temporary be stored to generate video thumbnails as a fallback.
The docker image will by default run on port 3000.
Here is an example of the full docker command:
```bash
docker run -d \
-p 3000:3000 \
-e MONGODB_URL=mongodb://127.0.0.1:27017/mydrive \
-e DB_TYPE=fs \
-e PASSWORD_ACCESS=secretaccesspassword \
-e PASSWORD_REFRESH=secretrefreshpassword \
-e PASSWORD_COOKIE=secretcookiepassword \
-e KEY=encryptionkey \
-e VIDEO_THUMBNAILS_ENABLED=true \
-e TEMP_VIDEO_THUMBNAIL_LIMIT=5000000000 \
-v /path/example/mydrive/data/:/data/ \
-v /path/example/mydrive/temp/:/temp/ \
--name mydrive \
kylehoell/mydrive:latest
```
## 💻 Manual Installation
Required:
@@ -136,47 +184,6 @@ You can read more about this issue [here](https://stackoverflow.com/questions/38
<span id="docker"></span>
## 🐳 Docker image
Note: This is a work in progress and may have issues, please report any issues you find.
Run the following command to download the latest docker image:
```javascript
docker pull kylehoell/mydrive:latest
```
You must provide enviroment variables for the docker image to work. You can supply these during the docker run command instead of creating the env file. <br />
> [backend/config](backend/config) -> Backend Enviroment Variables
You must also provide a volume for the image if you are using a filesystem database or if you want to use the generate video thumbnails feature. Volumes should be mounted to /data/ and /temp. For example:
```javascript
-v /path/example/mydrive/data/:/data/ -v /path/example/mydrive/temp/:/temp/
```
The docker image will by default run on port 3000.
Here is an example of the full docker command:
```bash
docker run -d \
-p 3000:3000 \
-e MONGODB_URL=mongodb://127.0.0.1:27017/test \
-e DB_TYPE=fs \
-e PASSWORD_ACCESS=secretaccesspassword \
-e PASSWORD_REFRESH=secretrefreshpassword \
-e PASSWORD_COOKIE=secretcookiepassword \
-e KEY=encryptionkey \
-e VIDEO_THUMBNAILS_ENABLED=true \
-e TEMP_VIDEO_THUMBNAIL_LIMIT=5000000000 \
-v /path/example/mydrive/data/:/data/ \
-v /path/example/mydrive/temp/:/temp/ \
--name mydrive \
kylehoell/mydrive:latest
```
<span id="screenshots"></span>
## 📸 Screenshots