Skip to content

Instantly share code, notes, and snippets.

@TyrfingMjolnir
Last active September 21, 2023 18:23
Show Gist options
  • Save TyrfingMjolnir/234402499468db36b21f1bf36116a01e to your computer and use it in GitHub Desktop.
Save TyrfingMjolnir/234402499468db36b21f1bf36116a01e to your computer and use it in GitHub Desktop.
How I installed FileMaker 20 Server on a Joyent SmartOS( non-native, non-LX, ) BHYVE zone

Configuring the VM in Joyent SmartOS /opt/local/artifacts/sn01bhyveUbuntuFM20S01.json had the following content

VCPUs in my case for this install: https://www.intel.com/content/www/us/en/products/sku/123550/intel-xeon-silver-4114-processor-13-75m-cache-2-20-ghz/specifications.html, meaning depending on the software to install one can pick anything between 1 and 10 for "vcpus"

{
  "autoboot": false,
  "brand": "bhyve",
  "alias": "sn01bhyveUbuntuFM20S01",
  "hostname": "sn01bhyveUbuntuFM20S01",
  "dns_domain": "lan.domain.tld",
  "bootrom": "uefi",
  "vcpus": 2,
  "bhyve_extra_opts": "-w -s 0:3:0,ahci-cd,/mini.iso",
  "ram": 8192,
  "device": null,
  "disks": [
    {
      "model": "virtio",
      "media": "disk",
      "size": 204800,
      "boot": true
    }
  ],
  "resolvers": [
    "208.67.222.222",
    "208.67.220.220"
  ],
  "nics": [
    {
      "nic_tag": "admin",
      "model": "virtio",
      "ip": "10.177.98.212",
      "allow_ip_spoofing": false,
      "netmask": "255.255.252.0",
      "gateway": "10.177.99.1",
      "primary": true
    }
  ],
  "set_customer_metdata": {
    "root_authorized_keys": "ssh-rsa AAAAB3NB6ZIsXYjxjeQ==",
    "user-script": "/usr/sbin/mdata-get root_authorized_keys > ~root/.ssh/authorized_keys ; /usr/sbin/mdata-get root_authorized_keys > ~ubuntu/.ssh/authorized_keys"
  },
  "vnc_port": 43012
}

Creating the VM

time vmadm create < /opt/local/artifacts/sn01bhyveUbuntuFM20S01.json
cd /zones/<<UUID>>/root/
curl -kLO http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/mini.iso
vmadm start <<UUID>>

Perform the Ubuntu install over console or VNC( important to note this will not work from MacOS X as the built in screen sharing do not support login without password. )

vmadm console <<UUID>>

After the install has been done and Ubuntu ask for you to remove the USB / CDVD-ROM

vmadm update 2840d156-9c9a-68ee-bc3e-d899bd2596d6 bhyve_extra_opts="-w"

In order to install FileMaker inside the VM

cd /tmp
curl -kLO <<URL as given by subscription>>
cd ~/
mkdir -p install/fminstaller
unzip /tmp/fms_20.1.1.38_Ubuntu20_amd64.zip
ls filemaker*.deb
sudo apt install ./filemaker-server-20.1.1.38-amd64.deb
sudo /usr/bin/lsof -i -P -n | grep LISTEN

Optional fun stuff

For signing of SSL to take place, make sure you have port 80 forwarded to the guest that FileMaker runs on.

Requires port 80 to be exposed to the public from the same IP that shows online, when you connect to the public internet.

sudo apt-get install certbot vim neovim tmux htop
mkdir -p /opt/local/bin/
cd /opt/local/bin/
curl -kLO https://raw.githubusercontent.com/BlueFeatherGroup/FileMaker-LetsEncrypt-Mac/master/GetSSL.sh

Patch for Linux default

sed -i -e 's/\/Library\/FileMaker\ Server\//\/opt\/FileMaker\/FileMaker\ Server\//g' GetSSL.sh

or

sed -i -e 's,/Library/FileMaker Server/,/opt/FileMaker/FileMaker Server/,g' GetSSL.sh
chmod +x GetSSL.sh
sudo /opt/local/bin/GetSSL.sh

If you are old school like me you will work with XML/XSLT

fmsadmin set cwpconfig enablexml=true

There is also

fmsadmin SET CWPCONFIG ENABLEPHP=true

Do not forget to do fmsadmin RESTART WPE in order to activate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment