Ubuntu FMS on FMP Client Machine
Using VirtualBox - Data directory on host nfs-share
Install your "portable" FileMaker Server on your developer machine in a lightweight VM, keep Data on your filesystem.
Or install FMS19 additional to your locally installed FMS16/17/18 (macOS)
nfs Share on macOS:
create folder fmsdata in /Users/Shared/
add it to nfs-exports:
$ sudo pico /etc/exports
add line:
/System/Volumes/Data/Users/Shared/fmsdata -mapall=root localhost
to access the nfs share via localhost (nat to VM):
$ sudo pico /etc/nfs.conf
add line:
nfs.server.mount.require_resv_port = 0
grant Full Disk Access to nfsd:
System Preferences —> Security & Privacy —> Privacy —> Full Disk Access —> cmd + shift + G —> /sbin/nfsd —> Enter
restart nfs deamon:
$ sudo nfsd restart
read more here:
https://www.devguide.at/docker/docker-nfs-implementation-fuer-bessere-performance-in-macos-11-bigsur/
nfs Share on Windows:
for this to work on "non Server" Windows (10), you need to install a nfs server
https://www.hanewin.net/nfs-e.htm
C:\Program Files\nfsd\nfsctl.exe —> Edit —> Preferences —> Exports —> Edit exports file
(also accessible through Control Panel —> haneWIN NFS Server)
add line:
C:\fmsdata -name:fmsdata -mapall:{win user sid}:S-1-5-114 -range 127.0.0.1 127.0.0.1
(get your users SID in cmd: wmic useraccount where name='username' get sid)
Windows —> Start —> haneWIN Software —> start NFS Server
copy the FMS Installer and maybe needed selfsigning Root certificate to …/fmsdata/Install/
Blog about selfsigning Root-cert:
https://blog.beezwax.net/2017/12/03/creating-your-own-ssl-certificates-for-filemaker/#more-4439
for „green locks“, add a /etc/hosts entry pointing 127.0.0.1 to the fqdn of your FMS (as in certificate)
or if you run your internal dns, add a CNAME pointing your FMSs fqdn to your host machine
Install VM
VirtualBox:
~ 4 GB Ram (for WebD), ~8 GB disk (VDI dynamic)
Networkadapter: NAT
Port redirections (examples):
• FMP 50030 5003
• SSH 2022 22
• WebD 8443 443
Default IPs on VBox (Adapter 1):
• VM: 10.0.2.15
• Host: 10.0.2.2
Install ubuntu-18.04.5 server
in install dialog:
• set language, keyboard layout, user and password, leave everything else default
• add add openSSH package
login via ssh (macOS terminal / windows puTTY):
$ ssh -p 2022 {user}@127.0.0.1
$ sudo apt install nfs-common
check if you can see nfs shares:
$ showmount -e 10.0.2.2
create mountpoint:
$ sudo mkdir /media/fmsdata
add share to fstab:
$ sudo nano /etc/fstab
add line:
(macOS host)
10.0.2.2:/System/Volumes/Data/Users/Shared/fmsdata /media/fmsdata nfs rw,sync,hard,intr 0 0
(windows host)
10.0.2.2:/fmsdata /media/fmsdata nfs rw,sync,hard,intr 0 0
$ sudo reboot
login via ssh (macOS terminal / windows puTTY):
$ ssh -p 2022 {user}@127.0.0.1
check if nfs mounts are present
$ cd /media/fmsdata
$ ls
$ cd Install
create folders for fms/Data:
$ sudo mkdir -p /opt/FileMaker/FileMaker\ Server
link /media/fmsdata as Data to FMS install directory:
$ sudo ln -s /media/fmsdata /opt/FileMaker/FileMaker\ Server/Data
install fms:
$ sudo apt upgrade
$ sudo apt install ./filemaker-server_19.4.1.41_amd64.deb
go through the installer, set fmsuser a.s.o
if needed add self issued Root certificat from the share if format is pem, convert to crt:
$ sudo openssl x509 -in yourRootCert.pem -inform PEM -out yourRoutCert.crt
make store for Extra certs:
$ sudo mkdir /usr/share/ca-certificates/extra
$ sudo cp YourRootCert.crt /usr/share/ca-certificates/extra/
$ sudo dpkg-reconfigure ca-certificates
accept new certs, activate your added cert
$ sudo update-ca-certificates
$ sudo service fmshelper start
login via browser:
https://127.0.0.1:8443/admin-console
import certificate
import license
set server name to fqdn
stop database server
$ sudo service fmshelper stop
$ sudo service fmshelper start
your FMS is up. The system uses about 5 GB of data, I assigned 8GB.
In FMP add host: your.fms.box:50030
Access WebD: https://your.fms.box:8443/fmi/webd
Access Admin-Console: https://your.fms.box:8443/admin-console
With ssl port forwarding, upload filemaker file to host from FMP does not work. But as the Data-directory resides in the hosts filesystem, just copy it to macOS: /Users/Shared/fmsdata/Databases/ windows: C:\fmsdata\Databases
I’ve tested this on windows and it seems to work, but I’m not sure about performance and reliability, test thoroughly first. Otherwise it might be better to keep the files inside the VM.