-
Notifications
You must be signed in to change notification settings - Fork 36
Setting Up a Server
The server can be installed on any Debian Linux system (for example, on a desktop machine, a server in the cloud, an Intel NUC, or a Raspberry Pi). You can also set up a Linux VM on your machine using Vagrant.
You can also set up and run the server software on a MacOS computer, in a more limited way (enough to store and retrieve patient data so the Buendia app will work properly on your tablets, but without self-management functions like automatic backup and software update).
See Hardware Requirements for details on obtaining a server device, client devices, or network hardware.
A working Buendia server has the following installed:
- A working OpenMRS system
- The CIEL standard concept dictionary
- The Project Buendia additions to the standard dictionary
- The Project Buendia module
Below are instructions for 4 situations you might be in, whether you are doing a field deployment, or just trying it out.
- First, download the Debian Stretch ISO image. The NUC has an oddball WiFi card in it, so the free firmware doesn't work. The easiest solution to this is to use the version of Debian Stretch that contains the non-free firmware from this page, and hope that Richard Stallman doesn't notice and get angry at you. Here is the direct download link as of 2019-06-14.
- Now flash the ISO image onto a USB stick. Balena has made an incredibly simple and friendly open-source flashing utility called Etcher, you should use it! It's here. Installation instructions on the Balena site.
- Put the USB stick into the NUC. You'll want a keyboard and HDMI-enabled monitor as well. Choose Install and follow the instructions!
once the usb stick is inserted and the NUC is turned on
- Screen: Debian GNU/Linux UEFI Installer Menu:
- select: Graphical Install
- Screen: Select Language (1 screen)
- select: english
- Screen: Select Your Location (1 screen)
- select: United States
- Screen: Configure Keyboard (1 screen)
- select: American English (or preference)
loading bars
- Screen: Detect Network Hardware (1 screen)
- select: yes
- note: you should have the non-free firmware files loaded onto your usb drive.
loading bars
- Screen: Configure the Network (6 screens)
- sub-screen: "You may see a message stating: your system has multiple network interfaces. Choose the one to use as the primary network interface during Primary network interface"
- Select the network: wlp2s0: Intel Corporations Device 24fb (wireless)
- "wireless" is the thing to note here as this is a headless server setup.
- sub-screen: "Select the wireless network to use during the installation process."
- Select: (the network you wish to use) use the arrow keys to highlight the network and hit enter to select.
- sub-screen: "Choose wEP/Open if the network is open to secured with WEP. Choose WPA/WPA2 if the network is protected with WPA/WPA2 PSK (pre-Shared Key). wireless network type for wlp2s0"
- select: WPA/WPA2 PSK
- sub-screen: "Enter the passphrase for WPA/WPA2 PSK authentication. This should be the passphrase defined for the wireless network you are trying to use WPA/WPA2 passphrase for wireless device wlp2s0"
- enter passphrase as defined by description.
- sub-screen: "You may see a message stating: your system has multiple network interfaces. Choose the one to use as the primary network interface during Primary network interface"
loading bars
- sub-screen: "Please enter the hostname for this system."
- hostname: NUC2
- sub-screen: "The domain name is the part of your internet address to the right of your host name. It is often something that ends in .com, .net, .edu, or .org. If you are setting up the home network, you can make something up, but make sure you use the same domain name on all your computers."
- domain name: attlocal.net
- Screen: Set up Users and Passwords (3 screens)
- sub-screen: "You need to set a password for 'root', the system administrative account. A malicious or unqualified user with root access can have disastrous results, so you should take care to choose a root password that is not easy to guess. It should not be a word found in dictionaries, or a word that could be easily associated with you."
- password: (select password)
- re-enter password: (same pass)
- sub-screen: "A user account will be created for you to use instead of the root account for non-administrative activities."
- username: buendia
- sub-screen: A good password will contain a mixture of letters, numbers and punctuation and should be changed at regular intervals.
- password: (select password)
- re-enter password: (same pass)
- sub-screen: "You need to set a password for 'root', the system administrative account. A malicious or unqualified user with root access can have disastrous results, so you should take care to choose a root password that is not easy to guess. It should not be a word found in dictionaries, or a word that could be easily associated with you."
- Screen: Configure the Clock (1 screen)
- sub-screen: If the desired time zone is not listed, then please go back to the step 'choose language' and select a country that uses the desired time zone.
- select: Eastern
- Screen: Partition Disks (5 screens)
- sub-screen: "The installer can guide you through partitioning a disk (using different standard schemes) or, if you prefer, you can do it manually..."
- select: Guided - use entire disk
- sub-screen: "Note that all data on disk will be erased, but not before you have confirmed that you really want to make the changes."
- select: SCSI1 (0,0,0) (sda) - 250.1 GB ATA Samsung SSD 860
- note: the selection is the nuc, the other option will be the flash drive you have inserted.
- sub-screen: "Selected for partitioning: SCSI1 (0,0,0) (sda) - 250.1 GB ATA Samsung SSD 860 This disk can be partitioned using one of several different schemes."
- select: Separate /home partition
- sub-screen: This is an overview of your current configuration partitions and mount points. Select partition to modify it's settings...
- ensure all specs match the instructions here.
- select: Finish partitioning and write changes to disk
- sub-screen: confirm 'if you continue, the changes listed below will be written to the disks...
- select: yes
- sub-screen: "The installer can guide you through partitioning a disk (using different standard schemes) or, if you prefer, you can do it manually..."
loading bars
- Screen: Configure the Package Manager (3 screens)
- sub-screen: "The goal is to find a mirror of the Debian archive that is close to you on the netword - be aware that nearby countries, or even your own, may not be the best choice."
- select: United States
- sub-screen: "Please select a Debian archive mirror."
- select: ftp.us.debian.org
- sub-screen: "If you need to use the HTTP proxy to access the outside world, enter the proxy information here. Otherwise, leave this blank."
- (leave black)
- sub-screen: "The goal is to find a mirror of the Debian archive that is close to you on the netword - be aware that nearby countries, or even your own, may not be the best choice."
loading bars
- Screen: Configuration Popularity Contest (1 screen)
- sub-screen: "The system may anonymously supply the distribution developers with statistics about the most used packages on this system..."
- select: no
- sub-screen: "The system may anonymously supply the distribution developers with statistics about the most used packages on this system..."
loading bars
- Screen: Software Selection (1 screen)
- sub-screen: "At this moment, only the core of the system is installed. Tp tune the system to your needs, you can choose to install one or more of the following predefined collections of software."
- check boxes: SSH server standard system utilities
- uncheck boxes: Debian desktop environment ... GNOME ... Xfce ... KDE ... Cinnamon ... MATE ... LXDE web server print server
- tab to continue button and hit enter
- sub-screen: "At this moment, only the core of the system is installed. Tp tune the system to your needs, you can choose to install one or more of the following predefined collections of software."
loading bars
- Screen: Installation Complete (1 screen)
- select: continue
loading bars
reboot of NUC
- Terminal:
- login: $root
- Password: (password)
- Edit the /etc/network/interfaces file.
- $nano /etc/network/interfaces
- Add:
auto wlp2s0
iface wlp2s0 inet dhcp
wpa-ssid mywifiname
wpa-psk mywifipassword
- hit control o (to write)
- hit enter
- hit control x (to exit)
-
Reboot the server. It should now be on the wifi.
reboot now
-
from root:
- login:
root
- enter passphrase:
- login:
-
check you are connected to the internet
ping 8.8.8.8
- ctrl c (to exit ping)
-
Install sudo
apt update
apt install sudo
- Install git
apt install git
y
- set buendia to sudo user:
usermod -aG sudo buendia
- Clone the repo and step into it:
git clone https://github.com/projectbuendia/buendia
cd buendia
- Do the stuff in script here as follows:
- Enable apt to grab packages via https
sudo apt install apt-transport-https
sudo nano /etc/apt/sources.list
- Add:
deb [trusted=yes] https://projectbuendia.github.io/builds/packages stable main java
[control] + [o] [enter] [control] + [x]
- install the server
sudo apt update
sudo apt install -y buendia-site-test buendia-server
- Use
ip addr show
to figure out what address the NUC is on on your local network. Go to that address: xx.xx.xx.xx:9000/openmrs. If you see the OpenMRS dashboard page, things probably worked.
See the document Setting up a server: Windows.
See the document Setting up a server: Mac.
About the software
System Overview
Client Application
Server Application
Server Platform
Development practices
GitHub Usage
Java Style
Testing
Releases
For field users and testers
Software Install and Configuration
Upon Receiving Your Gear
Setting Up a Tablet
Setting Up a Server
Setting Up an Access Point
Reference Configuration