Skip to content

Commit

Permalink
Merge pull request #20 from ubergeek77/staging
Browse files Browse the repository at this point in the history
Release 1.2.0
  • Loading branch information
ubergeek77 authored Jul 1, 2023
2 parents 386bce8 + 478001d commit 0b63c2e
Show file tree
Hide file tree
Showing 9 changed files with 858 additions and 317 deletions.
26 changes: 19 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ git clone https://github.com/ubergeek77/Lemmy-Easy-Deploy
# Change into the directory
cd ./Lemmy-Easy-Deploy
# Check out the latest tag
git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
# Copy config.env.example to config.env
cp ./config.env.example ./config.env
Expand All @@ -36,7 +39,7 @@ cp ./config.env.example ./config.env

The default deployment as outlined above will get you running in ***about 1 minute!***

*NOTE: on non x86_64 platforms, such as ARM, **Lemmy-Easy-Deploy will have to compile Lemmy from source,** as ARM-based Docker Hub images are not always available for the latest Lemmy version. This will increase deploy time to about 20-30 minutes while Lemmy compiles.*
See the **FAQ & Troubleshooting** section for answers to common questions, i.e. where your data is stored.

What is this?
---
Expand Down Expand Up @@ -66,13 +69,21 @@ CLI arguments and configuration:

```bash
Usage:
./deploy.sh [-u|--update-version <version>] [-f|--force-deploy] [-d|--diag] [-h|--help]
./deploy.sh [options]

Run with no options to check for Lemmy updates and deploy them

Options:
-u|--update-version <version> Override the update checker and update to <version> instead.
-f|--force-deploy Skip the update checker and force (re)deploy the latest/specified version.
-d|--diag Dump diagnostic information for issue reporting, then exit
-h|--help Show this help message.
-s|--shutdown Shut down a running Lemmy-Easy-Deploy deployment (does not delete data)
-l|--lemmy-tag <tag> Install a specific version of the Lemmy Backend
-w|--webui-tag <tag> Install a specific version of the Lemmy WebUI (will use value from --lemmy-tag if missing)
-f|--force-deploy Skip the update checker and force (re)deploy the latest/specified version
-r|--rebuild Deploy from source, don't update the Git repos, and deploy them as-is, implies -f and ignores -l/-w
-y|--yes Answer Yes to any prompts asking for confirmation
-v|--version Prints the current version of Lemmy-Easy-Deploy
-u|--update Update Lemmy-Easy-Deploy
-d|--diag Dump diagnostic information for issue reporting, then exit
-h|--help Show this help message
```
*Tip: If you have edited your `config.env` and want to re-deploy your changes, but no updates are available, use `./deploy.sh -f`!*
Expand Down Expand Up @@ -112,8 +123,9 @@ FAQ & Troubleshooting
```
- Where is all my data?
- Deployment files and generated secrets are in `./live`. Don't delete them!
- This script deploys a Lemmy instance using Docker compose, with a **stack name** of `lemmy-easy-deploy`.
- This is all Docker under the hood, so you can find your data stored in Docker volumes. List them with
- This is all Docker under the hood, so you can find your Lemmy-specific data (such as the database) stored in Docker volumes. List them with
```bash
docker volume ls
```
Expand Down
62 changes: 39 additions & 23 deletions config.env.example
Original file line number Diff line number Diff line change
Expand Up @@ -4,44 +4,60 @@
LEMMY_HOSTNAME="example.com"

# If you use Cloudflare, your Cloudflare API token. Otherwise leave blank.
# If present, the DNS-01 challenge will be used to obtain valid HTTPS certificates
# --> If you use the Cloudflare Proxy, DO NOT FORGET to enable Cloudflare's Full (Strict) SSL mode! <--
# **This token must have access to edit the Zone where $LEMMY_HOSTNAME is**
# Using this option will increase build time, as the DNS plugin needs to be compiled. Subsequent deploys will be faster.
# Cloudflare Proxy users - set this if you have HTTPS issues
CF_API_TOKEN=""

# Whether or not to build Lemmy from source rather than use the Docker Hub images
# This will significantly increase deploy time!
BUILD_FROM_SOURCE="false"

# The name of your Lemmy instance, will be displayed on the site header (only used during first-time setup)
# If you use special characters, please backslash-escape them.
SETUP_SITE_NAME="Lemmy"

# The admin username for first time setup
SETUP_ADMIN_USER="lemmy"

###############################################################
### SETTINGS FOR ADVANCED USERS ONLY ###
### I CANNOT HELP YOU WITH ISSUES RELATED TO THESE SETTINGS ###
### Limited support is provided for these settings ###
###############################################################

# If true/1, prefix the Caddy host block with http:// to disable TLS entirely
CADDY_DISABLE_TLS="false"

# The external port to use for Caddy's port 80
CADDY_HTTP_PORT=80

# The external port to use for Caddy's port 443
CADDY_HTTPS_PORT=443

# If true/1, also deploy the postfix server and configure Lemmy to send emails
# NOTE: Port 25 is USUALLY disabled on most server providers. For this reason, the email service is not well tested
# Feedback on the email service is appreciated!
USE_EMAIL="false"
# The tls_enabled key in lemmy.hjson
LEMMY_TLS_ENABLED="true"

# If true/1, prefix the Caddy host block with http:// to disable TLS entirely
CADDY_DISABLE_TLS="false"
# If true/1, add an email configuration block to lemmy.hjson
ENABLE_EMAIL="false"

# The options below will be passed directly to lemmy.hjson
# See that file for how they will be used
# Remember to backslash escape any special characters!
POSTGRES_POOL_SIZE="5"
TLS_ENABLED="true"
SETUP_ADMIN_USER="lemmy"
LEMMY_NOREPLY_DISPLAY="Lemmy NoReply"
LEMMY_NOREPLY_FROM="noreply"
# The SMTP server to use for email, if ENABLE_EMAIL==true
SMTP_SERVER="postfix"

# The login name to use for the SMTP server
SMTP_LOGIN=""

# The login password to use for the SMTP server
SMTP_PASSWORD=""

# The TLS type to use for SMTP, can be none, tls, or starttls
SMTP_TLS_TYPE="none"

# The SMTP port to use for email, if ENABLE_EMAIL==true
SMTP_PORT="25"

# The display name to show on emails
SMTP_NOREPLY_DISPLAY="Lemmy NoReply"

# The full from address for emails
SMTP_NOREPLY_FROM="noreply@${LEMMY_HOSTNAME}"

# If true/1, also deploy the postfix server and configure Lemmy to send emails
# Will override ENABLE_EMAIL to true
ENABLE_POSTFIX="false"

# The database.pool_size key in lemmy.hjson
POSTGRES_POOL_SIZE="5"
Loading

0 comments on commit 0b63c2e

Please sign in to comment.