🚀 Is building a website too difficult? Let me guide you step by step—Learn about the 「Naibabiji WordPress Website Building Coaching Service」 →

(2021) Tutorial for Self-hosting RSS Reader Tiny Tiny RSS, Docker Installation of Awesome TTRSS

Tiny Tiny RSSis a free, open-source RSS aggregator reader based on PHP. It is currently one of the more popular choices for self-hosting an RSS subscription service. Naibabiji previously shared a method to install Tiny Tiny RSS via source code. Recently, it was discovered that the official version only supports installing TTRSS via docker, soThis tutorial has been updatedon how to install Awesome TTRSS using docker.
Awesome TTRSS aims to provide a「one-stop containerized」Tiny Tiny RSS solution, offering an easy deployment method and some additional plugins to enhance the user experience. (Naiba hasn't figured out how to install the official Tiny Tiny RSS version, ( ╯□╰ ))

Preparation Before Self-Hosting Tiny Tiny RSS

To successfully self-host a Tiny Tiny RSS service, we need to prepare the following:
  1. A VPS server. If you want to subscribe to foreign sources, it is recommended to choose a foreign VPS;
  2. A domain name. If you plan to access it directly via the server IP, this is optional.
The server can be domestic or foreign. If you have many subscription sources from foreign websites, a foreign server is recommended for better network connectivity. As for the domain, registering one costs from a few to tens of yuan per year. If you already have a domain, you can also use a subdomain. Refer toDomain Name Guide

Steps to Self-Host Tiny Tiny RSS

Create a VPS Server

For the server, it is recommended to choose aForeign VPS. Here, Naiba choosesVultr. You can purchase a server starting from $2.50 per month, but the $5 and above plans are recommended for better performance and the ability to host websites.Vultr Server Purchase Tutorial For the operating system, choose CentOS 7. It is recommended to select at least the $5 configuration for better performance, and you can alsoBuilding a Website

install Baota Panel

After the server is created, we will install Baota Panel on it.
Baota Panel is a server operation and maintenance panel that can visualize many operations that would otherwise require Linux command-line input, a boon for beginners.
Naibabiji has previously published a dedicated tutorial on installing Baota Panel. Please refer to:2021 Baota Panel Installation Tutorial (Updated with Video Tutorial)

Install docker and docker-compose

After installing Baota Panel, select Software Store on the left, then search for docker to install it.If you want to manually install docker using the terminal, the command is as follows:
curl -sSL https://get.docker.com/ | sh
systemctl enable --now docker
After the Docker Manager installation is complete, we also need to manually install docker-compose.You can use the terminal in Baota Panel, or enter the following command in xShell to install docker-compose (the latest version at the time of this tutorial's release is 1.29.2).
curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
After installation, enter the following command to check if the installation was successful.
docker -v
docker-compose -v

Install Awesome TTRSS

Awesome TTRSS can be installed via docker or docker-compose. Here we will use the docker-compose method for installation. 1. Downloaddocker-compose.ymlthis file to any folder on the server. Open Baota Panel, click Files on the left, which will default to the /www/wwwroot directory. This tutorial saves it to that folder.Click Remote Download, enter the URL https://raw.githubusercontent.com/HenryQW/Awesome-TTRSS/main/docker-compose.yml, then confirm. Next, in Baota Panel's File Manager, click to edit this docker-compose.yml file and modify the following 3 parameters.
SELF_URL_PATH=http://localhost:181/ # 把localhost修改为你自己服务器的IP,便于待会儿通过IP访问查看是否正常工作。
DB_PASS=ttrss # 把ttrss改成和下面参数一样的值。 
POSTGRES_PASSWORD=ttrss # 把ttrss改成和上面一样的值,就是说这两个参数用同一个密码。
After making the modifications, save the file, then click Terminal.Enter `docker-compose up -d`, and when prompted with 'done', it means the service deployment and startup were successful.

Modify Tiny Tiny RSS Configuration

After starting TTRSS with the above command, open your browser and access your VPS's IP address plus port 181 to see the Tiny Tiny RSS login interface.If you find that entering VPSIP:181 does not open TTRSS, first check if port 181 is not opened in the firewall. Search for 'firewall' in Baota Panel's App Store, then go to the firewall and add a TCP rule for port 181.Enter the default usernameadminand passwordpasswordto log in.In the upper right corner of the screen, click the three bars, select Preferences to enter settings. Under the Language item, select Simplified Chinese and save, and the interface will change to Simplified Chinese.You can configure the remaining settings according to your actual situation.

Bind a Domain Name to Tiny Tiny RSS

Accessing Tiny Tiny RSS via IP+port is not very convenient. Next, we will bind a domain name to Tiny Tiny RSS.In the Websites section of Baota Panel, add a website. There is no need to create FTP or a database; simply fill in the domain name and confirm.Then click the Settings button next to the website, select Reverse Proxy on the left side of the settings interface. Fill in any Proxy Name, set the Target URL to http://127.0.0.1:181, and submit. Then go back to the File Manager, edit the docker-compose.yml file, change the URL after SELF_URL_PATH= to your bound domain name URL, and save. Open the terminal, enter `docker-compose up -d` to deploy again. Then you can access Tiny Tiny RSS via the domain name.

Acknowledgments

At this point, the Tiny Tiny RSS installation tutorial is complete. Thanks toimhuBig Bird Blogfor sharing. Naiba also learned and figured out this tutorial by searching for their articles. Also, thanks to theAwesome TTRSSproject author for their efforts, bringing us novices a Tiny Tiny RSS reader project with a better user experience.

🚀 Still feeling confused after reading the tutorial? Let me guide you step-by-step.

「Naibabiji WordPress Website Building Coaching Service」—From choosing a domain and buying hosting, to installing a Theme and publishing content, I「ll coach you through every step, helping you avoid detours and reach your goal directly.

👉 Learn about the Website Building Coaching Service
<

„ (2021) Self-hosted RSS Reader Tiny Tiny RSS Tutorial, Docker Installation of Awesome TTRSS“ has 17 comments

  1. ssdsays:

    Modified the docker-compose.yml file, changed SELF_URL_PATH= to a domain starting with https, and redeployed. Accessible via https, but encountered an error when logging into the account: Error: Browser check failed: window.requestIdleCallback not found. Stack trace. Stuck. Environment details: ttrss is deployed in a Docker environment on Server B, using Server A to reverse proxy Server B.

    • Leesays:

      First, test if the functionality works normally using the IP. If it works, then use a regular HTTP domain for reverse proxy. If it still works normally, then the issue lies in the SSL configuration. Focus on checking the SSL configuration part.

    • Quark Jacksays:

      Me too. I can open it on Chrome and Firefox on Windows, but it cannot be opened on iOS and iPad.

  2. Lewissays:

    After setting up reverse proxy, what's the situation where the domain cannot be opened? Initially, there was no problem opening it using the VPS's IP, but after switching to the domain, it cannot be opened. The domain has already been resolved to the VPS's IP.

  3. benurocsays:

    May I ask if the domain bound to Tiny Tiny RSS must be registered (ICP filing)?

  4. Don't believesays:

    Always
    Operation timed out
    Operation timed out
    Operation timed out
    Operation timed out

  5. says:

    Hello, I followed your tutorial, but encountered a problem with setting the domain: Setting it to https://domain, Baota Panel installed the certificate and forced HTTPS, but the page prompts that the domain should be set to http://domain; After setting the domain to http://domain, it can be accessed via https://domain, but after logging in, it gets stuck at 30% and a pop-up prompts that it should be set to https://domain, finally unable to enter the system. Seeking advice from experts on how to solve this.

    • Leesays:

      In your case, first, do not force enable SSL in the Baota Panel backend, but install the certificate. Then, set the RSS to access via https. After testing normal access, then enable the forced redirect.

  6. Hisays:

    What should I fill in for OTP login verification? It still shows authentication required after reinstallation.

    • Leesays:

      I haven't encountered this before. It's probably caused by some security settings you made yourself.

      • Hisays:

        Yes. Also, I followed the installation process, but when accessing the domain, the tt-rss login interface appears. However, after logging in, it shows 404 Not Found nginx. Could you please advise?

  7. Little Sun Changzaisays:

    Awesome, it worked!

Post Reply

Your email address will not be published. Required fields are marked with*marked

🔒 Security Verification
Find "Hands Folded in Prayer"
🤝
Handshake
🙏
Folded Hands
Raised Hand
👎
Thumbs Down

×
二维码

Scan QR Code to Follow

AI Website Building Assistant

🤖
Hello! I am the Naibabiji AI Assistant. How can I help you?
Quick Consultation: