aboutsummaryrefslogtreecommitdiff
path: root/content/blog/2023-06-30-self-hosting-voyager-lemmy-client.md
diff options
context:
space:
mode:
authorChristian Cleberg <hello@cleberg.net>2024-03-04 22:34:28 -0600
committerChristian Cleberg <hello@cleberg.net>2024-03-04 22:34:28 -0600
commit797a1404213173791a5f4126a77ad383ceb00064 (patch)
treefcbb56dc023c1e490df70478e696041c566e58b4 /content/blog/2023-06-30-self-hosting-voyager-lemmy-client.md
parent3db79e7bb6a34ee94935c22d7f0e18cf227c7813 (diff)
downloadcleberg.net-797a1404213173791a5f4126a77ad383ceb00064.tar.gz
cleberg.net-797a1404213173791a5f4126a77ad383ceb00064.tar.bz2
cleberg.net-797a1404213173791a5f4126a77ad383ceb00064.zip
initial migration to test org-mode
Diffstat (limited to 'content/blog/2023-06-30-self-hosting-voyager-lemmy-client.md')
-rw-r--r--content/blog/2023-06-30-self-hosting-voyager-lemmy-client.md126
1 files changed, 0 insertions, 126 deletions
diff --git a/content/blog/2023-06-30-self-hosting-voyager-lemmy-client.md b/content/blog/2023-06-30-self-hosting-voyager-lemmy-client.md
deleted file mode 100644
index f27ab65..0000000
--- a/content/blog/2023-06-30-self-hosting-voyager-lemmy-client.md
+++ /dev/null
@@ -1,126 +0,0 @@
-+++
-date = 2023-06-30
-title = "Self-Hosting Voyager - A Lemmy Web Client"
-description = "A guide to self-hosting the Voyager application on your own server."
-+++
-
-## Installation Guide
-
-[Voyager](https://github.com/aeharding/voyager) is a mobile-first Lemmy
-web client, based on iOS design standards. It follows very closely to
-Apollo's design.
-
-This post is a guide showing how I was able to build and launch my own
-instance of Voyager via Docker Compose.
-
-### Clone the Repository
-
-Start by cloning the repository and entering it:
-
-```sh
-git clone https://github.com/aeharding/voyager
-cd voyager
-```
-
-### Build the Image
-
-With this repository, you can build the image yourself without any
-further configuration. When complete, it'll give you the image ID for
-you to run.
-
-```sh
-sudo docker build .
-# Successfully built 5f00723cb5be
-```
-
-With the image ID above, you can run the container and pass the
-requested port `5314` through or use a custom port, if you
-wish.
-
-You can also set the `CUSTOM_LEMMY_SERVERS` environment
-variable if you want to add to the default suggested login servers. This
-must be set with a comma separated list of suggested servers. The first
-instance in the list will be the default view for logged-out users.
-
-I will be using a `docker-compose.yml` file to run this
-container, instead of a `docker run` command.
-
-```sh
-nano docker-compose.yml
-```
-
-```conf
-version: "2"
-services:
- voyager:
- image: 5f00723cb5be
- restart: always
- ports:
- - "<custom_port>:5314"
- environment:
- - CUSTOM_LEMMY_SERVERS=lemmy.dbzer0.com,lemmy.world,lemmy.ml,beehaw.org
-```
-
-```sh
-sudo docker-compose up -d
-```
-
-The web app will now be available at the following address:
-`<machine_ip>:<custom_port>`. If you are running it on your
-local device, try `localhost:<custom_port>`.
-
-### Reverse Proxy
-
-If you want to visit this app via an external URL or domain name,
-you'll need to set up a reverse proxy. The example below uses Nginx as
-a reverse proxy.
-
-Simply create the configuration file, paste the contents below, save the
-file, symlink the file, and restart Nginx.
-
-```sh
-sudo nano /etc/nginx/sites-available/voyager
-```
-
-```conf
-server {
- if ($host ~ ^[^.]+\.example\.com$) {
- return 301 https://$host$request_uri;
- }
-
- listen [::]:80;
- listen 80;
- server_name voyager.example.com;
- return 404;
-}
-
-server {
- listen [::]:443 ssl http2;
- listen 443 ssl http2;
- server_name voyager.example.com;
- access_log /var/log/nginx/voyager.access.log;
- error_log /var/log/nginx/voyager.error.log;
-
- location / {
- proxy_http_version 1.1;
- proxy_pass http://localhost:5314;
- proxy_set_header Host $host;
- }
-
- ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
- ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
- include /etc/letsencrypt/options-ssl-nginx.conf;
- ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
-}
-```
-
-```sh
-sudo ln sudo ln -s /etc/nginx/sites-available/voyager /etc/nginx/sites-enabled/voyager
-sudo systemctl restart nginx.service
-```
-
-The site will now be available at the `server_name` you
-specified above!
-
-You can visit my instance at
-[voyager.cleberg.net](https://voyager.cleberg.net) for an example.