Anchr is a simple, open-source self-hosted solution that allows you to take control of your links. With it, you can easily bookmark your favorite websites, create and manage collections of links, and more. Here's how to install Anchr on Fedora Server Latest.
Before installing Anchr, update your system with the latest packages and software with the following command in the terminal:
sudo dnf update
Anchr requires a database to store your links in. We'll use MariaDB, a popular open-source database solution.
Install MariaDB with the following command:
sudo dnf install mariadb-server
Start the MariaDB service and enable it to run on boot:
sudo systemctl start mariadb
sudo systemctl enable mariadb
Create a new database for Anchr and create a new user with privileges for the database:
mysql -u root -p
CREATE DATABASE anchr_db;
CREATE USER 'anchr_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON anchr_db.* TO 'anchr_user'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
Remember to replace password
with a strong password of your choice.
Anchr requires several dependencies to be installed. Install them with the following command:
sudo dnf install git nginx nodejs npm certbot python3-certbot-nginx
Clone the Anchr GitHub repository to the /var/www/
directory:
sudo git clone https://github.com/anchor-io/anchr.git /var/www/anchr
Change to the Anchr directory and install the required packages with the following commands:
cd /var/www/anchr
sudo npm install
Anchr is a web application that runs on top of Nginx, a popular open-source web server. We'll configure Nginx to run Anchr.
Create a new Nginx configuration file for Anchr:
sudo nano /etc/nginx/conf.d/anchr.conf
Add the following code to the configuration file:
server {
listen 80;
server_name example.com; # replace with your domain name
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name example.com; # replace with your domain name
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # replace with your SSL certificate path
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # replace with your SSL certificate key path
location / {
root /var/www/anchr/;
index index.html;
try_files $uri $uri/ /index.html;
}
location /api/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:5000/;
proxy_redirect off;
}
}
Save and close the file.
Test your Nginx configuration for any syntax errors:
sudo nginx -t
If there are no syntax errors, restart the Nginx service:
sudo systemctl restart nginx
Copy the Anchr configuration file and edit it with nano:
sudo cp /var/www/anchr/config.example.json /var/www/anchr/config.json
sudo nano /var/www/anchr/config.json
Edit the file with the following details:
{
"db": {
"host": "localhost",
"user": "anchr_user",
"password": "password",
"database": "anchr_db",
"connectionLimit": 100
},
"port": 5000,
"imageUploadDir": "/var/www/anchr/static/thumbnails/",
"publicDir": "/api/public",
"rootLink": "https://example.com",
"pageTitle": "Anchr",
"gaTrackingId": "",
"gtmTrackingId": "",
"hotjarTrackingId": "",
"recaptchaSiteKey": "",
"recaptchaSecretKey": "",
"adminEmail": "admin@example.com",
"smtpConfig": {
"host": "",
"port": 587,
"user": "",
"password": "",
"senderName": "Anchr",
"senderEmail": "anchr@example.com"
}
}
Remember to replace the required fields with your own details.
Save and close the file.
Start the Anchr application with the following command:
cd /var/www/anchr
sudo npm run server
Leave this terminal session running.
Anchr requires SSL for secure access. We'll use Let's Encrypt to obtain an SSL certificate.
Access the Let's Encrypt Wizard with the following command:
sudo certbot --nginx
Follow the steps to obtain an SSL certificate for your domain.
Open your web browser and access your Anchr installation by typing in your domain name in the address bar.
You should see the Anchr landing page.
Congratulations! You have successfully installed Anchr on Fedora Server Latest!
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!