HomeLinuxFileRun on Linode | Linux Journal

FileRun on Linode | Linux Journal


It’s possible you’ll need to arrange a file server like FileRun for any variety of causes. The principle purpose, I’d suppose, could be so you’ll be able to have your personal Google Drive various that’s underneath your management as an alternative of Google’s.

FileRun claims to be “In all probability the very best File Supervisor on the planet with desktop Sync and File Sharing,” however I feel you may need to be the decide of that for your self.

Simply to be fully clear right here, I like FileRun, however there’s a shortcoming that I hope they’ll ultimately repair. That shortcoming is that there are some, for my part, essential settings which can be locked away behind an Enterprise License requirement.

That apart, I actually just like the ease-of-use and suppleness of FileRun. So let’s check out it.

Stipulations for FileRun in Docker

First issues first, you’ll want a Docker server arrange. Linode has made that course of quite simple and you may set one up for just some bucks a month and may add a personal IP tackle (at no cost) and backups for only a couple bucks extra monthly.

One other factor you’ll want is a website identify, which you should purchase from nearly anyplace on-line for a variety of costs relying on the place you make your buy. You’ll want to level the area’s DNS settings to level to Linode. You will discover extra details about that right here: https://www.linode.com/docs/guides/dns-manager/

You’ll additionally desire a reverse proxy arrange in your Docker Server in an effort to do issues like route site visitors and handle SSLs in your server. I made a video in regards to the strategy of organising a Docker server with Portainer and a reverse proxy referred to as Nginx Proxy Supervisor that you would be able to take a look at right here: https://www.youtube.com/watch?v=7oUjfsaR0NU

When you’ve obtained your Docker server arrange, you’ll be able to start the method of organising your VaultWarden password supervisor on that server.

There are 2 main methods you are able to do this:

  1. Within the command line through SSH.
  2. In Portainer through the Portainer dashboard.

We’re going to check out how to do that in Portainer in order that we will have a person interface to work with.

Head over to http://your-server-ip-address:9000 and get logged into Portainer with the credentials we arrange in our earlier put up/video.

On the left facet of the display screen, we’ll click on the “Stacks” hyperlink after which, on the subsequent web page, click on the “+ Add stack” button.

It will convey up a web page the place you may enter the identify of the stack. Under that that you would be able to then copy and paste the next:

model: "2"<br></br>companies:<br></br>  db:<br></br>    picture: mariadb:10.1<br></br>    setting:<br></br>      MYSQL_ROOT_PASSWORD: uAWNCGKSwor7fi<br></br>      MYSQL_USER: linodefilerunuser<br></br>      MYSQL_PASSWORD: fEpwC92osi3FTW<br></br>      MYSQL_DATABASE: linodefilerundatabase<br></br>    volumes:<br></br>      - /dwelling/docker/filerun/db:/var/lib/mysql<br></br>    networks:<br></br>      nginxproxymanager_default:<br></br><br></br>  net:<br></br>    picture: filerun/filerun<br></br>    setting:<br></br>      FR_DB_HOST: db<br></br>      FR_DB_PORT: 3306<br></br>      FR_DB_NAME: linodefilerundatabase<br></br>      FR_DB_USER: linodefilerunuser<br></br>      FR_DB_PASS: fEpwC92osi3FTW<br></br>      APACHE_RUN_USER: www-data<br></br>      APACHE_RUN_USER_ID: 33<br></br>      APACHE_RUN_GROUP: www-data<br></br>      APACHE_RUN_GROUP_ID: 33<br></br>    depends_on:<br></br>      - db<br></br>    hyperlinks:<br></br>      - db:db<br></br>    ports:<br></br>      - "8200:80"<br></br>    volumes:<br></br>      - /dwelling/docker/filerun/html:/var/www/html<br></br>      - /dwelling/docker/filerun/user-files:/user-files<br></br>    networks:<br></br>      nginxproxymanager_default:<br></br><br></br>networks:<br></br>  nginxproxymanager_default:<br></br>    exterior: true

This Docker compose file / stack tells the system to obtain the most recent filerun/filerun picture to the Docker server, connect it to the “nginxproxymanager_default” community, mount it to the listing “dwelling/docker/filerun”, and make it obtainable on the docker server’s port 8200. The identical common precept applies to the mariadb container that we’ll use because the database, simply with totally different information and volumes.

You may change the trail of the place you’d wish to retailer the filerun information if you would like. Simply make it possible for the folder has the right permissions to be written to.

When you’re proud of the settings right here, we will deploy the container by clicking the button that claims “Deploy the stack”.

It will begin the method of downloading and deploying FileRun in your server. You may know that the container has been deployed as soon as the web page reloads and also you see all of your working containers.

image-1656193421734.png

Now you’ll be able to go to http://your-server-ip-address:8200 and you need to be capable of see the setup display screen for FileRun.

STOP.

So as so that you can truly be capable of use FileRun successfully, it wants a website identify and SSL.

Organising a website and SSL

Head again over to your Linode dashboard and go to “Domains”. Then discover the area that you simply added to your account. Click on it after which search for the CNAME part of the area administration.

Add a CNAME to your area by getting into a hostname entry for what you would like your subdomain to be. Within the instance video, I entered “pw” (with out the quotes). Under that, I entered the @ image within the “Alias to” field after which clicked “Save”.

Now that you’ve that accomplished, we will head over to Nginx Proxy Supervisor and setup our SSL and area.

Now you’ll be able to go to http://your-server-ip-address:81 and you need to be capable of see the login display screen for Nginx Proxy Supervisor.

The default credentials for Nginx Proxy Supervisor are:

E-mail:    [email protected]
Password: changeme

Enter these credentials (or yours for those who’ve up to date them) to login to your Nginx Proxy Supervisor occasion.

Click on on the tab on the high of the web page that claims “SSL Certificates” after which click on on the “Add SSL Certificates” button close to the highest proper of the web page.

Subsequent, click on the “Let’s Encrypt” possibility.

On the pop-up window that seems, enter the total URL of the area you’d wish to safe and press the “Enter” key in your keyboard. On this instance, you’d enter https://information.yourdomain.com.

As soon as you’ve got entered your URL, click on the “Take a look at Server Reachability” button proper under that. For those who get an error message, you should definitely right the problem and take a look at once more. If no errors are returned, make sure that the e-mail tackle on the web page is right, then learn and conform to the Let’s Encrypt Phrases of Service and click on the “Save” button.

It could take a minute or two for the system to generate and set up the important thing, however when it is accomplished, the web page will reload and you’ll see the entire obtainable SSLs in Nginx Proxy Supervisor.

Now that we have now our SSL arrange on our system, we will click on the “Hosts” tab throughout the highest of the web page. Then click on the “Proxy Hosts” possibility that exhibits up within the sub-menu.

Find the “Add Proxy Host” button close to the highest proper of the web page and click on it.

A brand new window will pop up and we’ll fill in some choices to configure our area.

Enter the area or subdomain you simply created the SSL for.

Depart the Scheme as http.

Enter the IP tackle of your container. This may be present in Portainer:

image-1656193573596.png

For the “Ahead Port” textbox, enter the container port. On this case it is 80. The 8200 that we see within the “Printed Ports” part of the picture above is what we’ll name the Docker port. We would like the port on the container facet of issues so we’ll use the quantity on the proper facet of the semicolon.

Click on the choices for “Cache Property,” “Block Widespread Exploits,” and “Websocket Assist.”

Now click on the “SSL” tab on the highest of the pop up window.

You may see a dropdown that claims “SSL Certificates” and, under that, “None.”

Click on “None” after which choose the SSL you created within the earlier steps.

Now verify the 4 choices which can be under that, then learn and conform to the Let’s Encrypt TOS after which click on Save.

After a second, the web page will reload and you need to see your new entry within the Proxy Hosts web page of Nginx Proxy Supervisor.

Configuring FileRun

Now you need to be capable of go to https://information.yourdomain.com and you need to see the identical arrange immediate that we noticed earlier. The method is straightforward sufficient as you may simply have to click on by means of every display screen and make it possible for all of the settings look the identical as what you arrange in your docker-compose/stack earlier.

As soon as you’ve got gone by means of all of the steps you may be given a username and password. Retailer these for later so we will use them to login. Don’t fret, although. You may change the default credentials as soon as you’ve got logged in.

Now you can create customers and add information and do (nearly) all of the stuff you’d anticipate to do with your personal semi-self-hosted file server answer.

You may watch the tutorial right here:

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments