FarmOS is a web-based application for farm management, planning, and record keeping. It is developed by a community of farmers, developers, researchers, and organizations with the aim of providing a standard platform for agricultural data collection and management. In this step by step guide I will show you how to install FarmOS on your Synology NAS using Docker & Portainer.
FarmOS v3.3.3Ā release.
This guide works perfectly with the latestSTEP 1
Please Support My work by Making a Donation.
STEP 2
InstallĀ Portainer using my step by step guide. If you already have Portainer installed on your Synology NAS, skip this STEP. Attention: Make sure you have installed the latest Portainer version.
STEP 3
Go toĀ File Station and open the docker folder. Inside the docker folder, create one new folder and name it farmos. Follow the instructions in the image below.
Note: Be careful to enter only lowercase, not uppercase letters.
STEP 4
Now create two new folders inside the farmosĀ folder that you created at STEP 3 and name them db and sites.Ā Follow the instructions in the image below.
Note: Be careful to enter only lowercase, not uppercase letters.
STEP 5
Download (click on the blue link below) then unzip and upload the php.ini file below in the farmos folder that you have previously created at STEP 3. Follow the instructions in the image below. šNote: Support my work to unlock the password. You can use this password to download any file on mariushosting forever!
STEP 6
Log into Portainer using your username and password. On the left sidebar in Portainer, click on StacksĀ thenĀ + Add stack. Follow the instructions in the image below.
STEP 7
In the Name field type in farmos. Follow the instructions in the image below.
version: "3.9" services: db: image: postgres:16 container_name: FarmOS-DB hostname: farmos-db mem_limit: 1g cpu_shares: 1024 security_opt: - no-new-privileges:true healthcheck: test: ["CMD", "pg_isready", "-q", "-d", "farmos", "-U", "farmosuser"] timeout: 45s interval: 10s retries: 10 volumes: - /volume1/docker/farmos/db:/var/lib/postgresql/data:rw environment: POSTGRES_DB: farmos POSTGRES_USER: farmosuser POSTGRES_PASSWORD: farmospass restart: on-failure:5 farmos: image: farmos/farmos:latest container_name: FarmOS hostname: farmos security_opt: - no-new-privileges:true ports: - 7917:80 volumes: - /volume1/docker/farmos/php.ini:/usr/local/etc/php/conf.d/farmos.ini:rw - /volume1/docker/farmos/sites:/opt/drupal/web/sites:rw restart: on-failure:5 depends_on: db: condition: service_healthy
STEP 8
Scroll down on the page until you see a button namedĀ Deploy the stack. Click on it. Follow the instructions in the image below. The installation process can take up to a few minutes. It will depend on your Internet speed connection.
STEP 9
If everything goes right, you will see the following message at the top right of your screen: āSuccess Stack successfully deployedā.
STEP 10
š¢Please Support My work by Making a Donation. Almost 99,9% of the people that install something using my guidesĀ forget to support my work, or justĀ ignoreĀ STEP 1. Iāve been very honest about this aspect of my work since the beginning: I donāt run any ADS, I donāt require subscriptions, paid or otherwise, I donāt collect IPs, emails, and I donāt have any referral links from Amazon or other merchants. I also donāt have any POP-UPs or COOKIES. I have repeatedly been told over the years how much I have contributed to the community. Itās something I love doing and have been honest about my passion since the beginning. But I also Need The Community to Support me Back to be able to continue doing this work.
STEP 11
The installation process can take up to a few seconds/minutes. It will depend on your Internet speed connection. Now open your browser and type inĀ http://Synology-ip-address:7917 Follow the instructions in the image below.
Select PostgreSQL as a Database type, then add the following details.
Database name: farmos
Database username: farmosuser
Database password: farmospass
ADVANCED OPTIONS
Host: farmos-db
Port number: 5432
Table name prefix: farm_
STEP 12
Click Save and Continue. Follow the instructions in the image below.
ā ļøWarning: If you can’t connect to the database, make sure you have followed the Firewall guide, especially RULE 5 and RULE 6.
STEP 13
Wait until the User module is installed. Follow the instructions in the image below.
STEP 14
Add your own personal information. Follow the instructions in the image below.
STEP 15
After you have added your personal information, click Save and continue. Follow the instructions in the image below.
STEP 16
Select the modules that you want to install. I have selected the default ones. Note: Keep in mind, the more modules you select, the longer the installation takes. Scroll down the page until you find the Save and continue button. Follow the instructions in the image below.
STEP 17
Click Save and continue. Follow the instructions in the image below.
STEP 18
Wait until all your modules are installed. Note: The process can take a long time. Follow the instructions in the image below.
STEP 19
Your FarmOS dashboard at a glance!
Enjoy FarmOS!
If you encounter issues by using this container, make sure to check out the Common Docker issuesĀ article.
Note: If you want to run the FarmOS container over HTTPS, check How to Run Docker Containers Over HTTPS. In order to make FarmOS work via HTTPS, it’s mandatory to activate WebSocket.
Note: Can I run Docker on my Synology NAS?Ā See the supported models.
Note: How to Back Up Docker Containers on your Synology NAS.
Note: Find outĀ how to update the FarmOS container with the latest image.
Note: How to Free Disk Space on Your NAS if You Run Docker.
Note: How to Schedule Start & Stop For Docker Containers.
Note: How to Activate Email Notifications.
Note: How to Add Access Control Profile on Your NAS.
Note: How to Change Docker Containers Restart Policy.
Note: How to Use Docker Containers With VPN.
Note: Convert Docker Run Into Docker Compose.
Note: How to Clean Docker.
Note: How to Clean Docker Automatically.
Note: Best Practices When Using Docker and DDNS.
Note: Some Docker Containers Need WebSocket.
Note: Find out the Best NAS Models For Docker.
Note: Activate Gmail SMTP For Docker Containers.
This post was updated on Monday / January 13th, 2025 at 2:21 AM