Compare commits

..

No commits in common. "master" and "add-env-documentation" have entirely different histories.

11 changed files with 33 additions and 211 deletions

View File

@ -1,49 +0,0 @@
name: Hugo Build and Deploy
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
test_build:
name: Build Hugo Site
runs-on: ubuntu-latest
container:
image: klakegg/hugo:0.111.3-ext-alpine-ci
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Check Hugo Version and Build
run: |
hugo version
hugo --minify
deploy:
name: Deploy to Server
runs-on: ubuntu-latest
needs: test_build
if: github.ref == 'refs/heads/master'
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup SSH and Deploy
run: |
eval "$(ssh-agent -s)"
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
chmod 700 ~/.ssh
ssh-keyscan "$SSH_HOST" >> ~/.ssh/known_hosts
chmod 644 ~/.ssh/known_hosts
ssh -p "$SSH_PORT" "$SSH_USER@$SSH_HOST" 'cd repo && git stash && git pull --force origin master && ./build.sh'
env:
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
SSH_USER: ${{ secrets.SSH_USER }}
SSH_HOST: ${{ secrets.SSH_HOST }}
SSH_PORT: ${{ secrets.SSH_PORT }}

30
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,30 @@
image: alpine:latest
stages:
- test
- deploy
test_build:
stage: test
image: klakegg/hugo:0.111.3-ext-alpine-ci
script:
- hugo version
- hugo --minify
only:
- merge_requests
- master
deploy:
stage: deploy
before_script:
- 'command -v ssh-agent >/dev/null || ( apk add --update openssh )'
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- ssh-keyscan $SSH_HOST >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
script:
- ssh -p $SSH_PORT $SSH_USER@$SSH_HOST "cd repo && git stash && git pull --force origin master && ./build.sh"
only:
- master

View File

@ -2,4 +2,4 @@
find ./ -type f -name '*.png' -not -path '*/.git/*' -exec sh -c 'cwebp -lossless $1 -o "${1%.png}.webp"' _ {} \;
find . -type f -not -path '*/.git/*' -exec sed -i -e 's/\.png/\.webp/g' {} \;
hugo -s . -d /var/www/yams.media/ --minify --cleanDestinationDir --gc --verbose --cacheDir $PWD/hugo-cache
hugo -s . -d /var/www/yams.media/ --minify --cleanDestinationDir --gc --verbose

View File

@ -11,8 +11,6 @@ Port forwarding helps you get better download speeds by allowing incoming connec
## ProtonVPN Users 🚀
ProtonVPN makes port forwarding easy! Just follow these steps:
> 🆕 ProtonVPN now supports **WireGuard with port forwarding**! If you want faster VPN performance, check out our [Switching Gluetun to WireGuard](/advanced/wireguard/) guide.
1. Create a script to update qBittorrent's port. Make sure you change `/your/install/location`:
```bash
mkdir -p /your/install/location/scripts
@ -53,8 +51,6 @@ You should see an output similar to this:
## Other VPN Providers 🌐
For other VPN providers, port forwarding configuration varies.
> 💡 Some providers support WireGuard too! See [Switching Gluetun to WireGuard](/advanced/wireguard/) for details.
For detailed provider-specific instructions, check the [Gluetun Port Forwarding Documentation](https://github.com/qdm12/gluetun-wiki/blob/main/setup/advanced/vpn-port-forwarding.md).
## Verifying Port Forwarding ✅

View File

@ -131,16 +131,6 @@ If you get an error, double-check all your settings and make sure they're correc
3. **Speed Matters**: Choose a VPN server that's relatively close to you for better download speeds
4. **Port Problems**: If you can't access qBittorrent after setting up the VPN, check the troubleshooting section below
## Switching to WireGuard ⚡
By default, YAMS uses **OpenVPN** for Gluetun. But if your VPN provider supports it, you can switch to **WireGuard** for faster speeds and quicker connections.
We recommend ProtonVPN for this, and weve written a full guide to help you switch:
👉 [Switching Gluetun to WireGuard](/advanced/wireguard/)
> 💡 If you store your WireGuard private key in the `.env` file, make sure to read the [Environment File Guide](/advanced/env-file/) to learn how to manage secrets securely.
## Troubleshooting 🔧
### Common Issues:

View File

@ -1,137 +0,0 @@
---
title: "Switching Gluetun to WireGuard"
date: 2025-04-05T12:00:00-03:00
draft: false
weight: 55
summary: Learn how to switch your Gluetun VPN configuration from OpenVPN to WireGuard for faster and more reliable connections.
---
Want faster VPN speeds and quicker connection times? It's time to switch from OpenVPN to **WireGuard**! This guide will walk you through updating your Gluetun configuration to use WireGuard — with a focus on **ProtonVPN**.
> ✅ **Why switch?** WireGuard is a modern VPN protocol thats faster, more efficient, and easier to configure than OpenVPN.
---
## For ProtonVPN Users 🚀
ProtonVPN makes it easy to use WireGuard with Gluetun. Here's how to update your configuration.
### Step 1: Get Your WireGuard Private Key 🔑
1. Go to [ProtonVPN WireGuard Config Generator](https://account.proton.me/u/0/vpn/WireGuard)
2. Select a server and enable **Port Forwarding** and **Moderate NAT** (optional)
3. Click **Download** to get the `.conf` file
4. Open the file and copy the value of `PrivateKey`
It will look something like this:
```
PrivateKey = wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU=
```
---
### Step 2: Update Your `.env` File 🛠️
Open your `.env` file and remove the OpenVPN credentials:
```bash
nano /opt/yams/.env
```
Remove or comment out:
```env
VPN_USER=your-username
VPN_PASSWORD=your-password
```
You can also remove `VPN_SERVICE=protonvpn` if you want to hardcode it in the compose file (see below), or leave it — both work.
> 💡 Not sure how the `.env` file works? Check out our [Environment File Guide](/advanced/env-file/) to learn how to manage variables like `WIREGUARD_PRIVATE_KEY` securely.
---
### Step 3: Update `docker-compose.yaml` 🐳
Find the `gluetun` service and replace the `environment:` section with the following:
```yaml
environment:
- VPN_SERVICE_PROVIDER=protonvpn
- VPN_TYPE=wireguard
- WIREGUARD_PRIVATE_KEY=wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU=
- VPN_PORT_FORWARDING=on
- VPN_PORT_FORWARDING_PROVIDER=protonvpn
- PORT_FORWARD_ONLY=on
```
> 🧠 **Tip:** You can still use `${VARIABLE}` syntax if you prefer to keep the private key in your `.env` file. See the [Environment File Guide](/advanced/env-file/) for more info.
---
### Step 4: Restart YAMS 🔄
Apply the changes:
```bash
yams restart
```
---
### Step 5: Verify Its Working ✅
Run the VPN check:
```bash
yams check-vpn
```
You should see your qBittorrent IP is different from your local IP — and located in the country you selected in ProtonVPN.
You can also check the Gluetun logs:
```bash
docker logs gluetun
```
Look for lines like:
```
Using VPN provider: protonvpn
VPN type: wireguard
Port forwarding is enabled
```
---
## For Other VPN Providers 🌐
WireGuard support varies by provider. Heres what to do:
1. Visit the [Gluetun Provider Docs](https://github.com/qdm12/gluetun-wiki/tree/main/setup/providers)
2. Find your VPN provider and follow their WireGuard instructions
3. Replace the `gluetun` environment variables in your `docker-compose.yaml` accordingly
> ⚠️ Not all providers support WireGuard or port forwarding. Check their documentation carefully.
---
## Troubleshooting 🔧
### Gluetun wont start?
- Double-check your `WIREGUARD_PRIVATE_KEY`
- Make sure `VPN_TYPE=wireguard` is set
- Check for typos in your `docker-compose.yaml`
### Port forwarding not working?
- Ensure `VPN_PORT_FORWARDING=on` and `PORT_FORWARD_ONLY=on` are set
- Verify that port forwarding is enabled in your ProtonVPN config
- Check Gluetun logs for forwarded port info
---
## Need Help? 🆘
If you're stuck:
- Visit our [Common Issues](/faqs/common-errors/) page
- Join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat
- Or ask in the [YAMS Forum](https://forum.yams.media)

View File

@ -14,8 +14,6 @@ From their [website](https://www.plex.tv/):
In YAMS, Plex is going to be your streaming service powerhouse! 🌟 It's like having your own Netflix, but with way more control. Plus, sharing with friends and family is super easy!
**Note:** Be warned that Plex has [recently](https://www.plex.tv/blog/important-2025-plex-updates/) put its most basic features behind a monthly subscription or a single lifetime purchase.
## First steps
Before we dive in, we need to do a bit of setup magic to let Plex work its charms. First, stop YAMS:

View File

@ -189,7 +189,7 @@ Pick your streaming service:
Each service has its strengths:
- **Jellyfin**: Free, open-source, easy to set up
- **Emby**: Similar to Jellyfin but with premium features
- **Plex**: Most polished, but requires online account and is more complex to configure. Be aware of these [new limitations](https://www.plex.tv/blog/important-2025-plex-updates/) if you don't have a Plex Pass
- **Plex**: Most polished, but requires online account and is more complex to configure
### 8. VPN Configuration

View File

@ -7,15 +7,9 @@
<li class="zerostatic">
<img src="/pics/yams-small.png"/> <a href="https://yams.media">yams.media</a>
</li>
<li class="zerostatic">
<img src="/pics/gitea-small.png"/> <a href="https://git.rogs.me/rogs/yams">git.rogs.me/rogs/yams</a>
</li>
<li class="zerostatic">
<img src="/pics/gitlab-small.png"/> <a href="https://gitlab.com/rogs/yams">gitlab.com/rogs/yams</a>
</li>
<li class="zerostatic">
<img src="/pics/github-small.png"/> <a href="https://github.com/rogsme/yams">github.com/rogsme/yams</a>
</li>
<li class="zerostatic">
<img src="/pics/discord-small.png"/> <a href="https://discord.gg/Gwae3tNMST">Discord</a>
</li>
@ -28,7 +22,7 @@
</li>
{{ end }}
<li class="zerostatic">
<a href="https://www.buymeacoffee.com/rogs">🍕 Support YAMS! 🤑</a>
<a href="https://www.buymeacoffee.com/rogs"><img src="https://img.buymeacoffee.com/button-api/?text=Support YAMS&emoji=\U0001f355&slug=rogs&button_colour=40DCA5&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00" /></a>
</li>
</ul>
</div>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 351 B