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 <<UUID>> bhyve_extra_opts="-w"
In order to install FileMaker inside the VM
sudo apt-get install libdispatch0 avahi-daemon odbcinst1debian2 openjdk-17-jdk policycoreutils sysstat unzip zip libantlr3c-3.4-0 libavahi-client3 fonts-liberation2 fonts-noto fonts-takao fonts-wqy-zenhei apache2 nginx libboost-system1.74-dev libopencv-dev
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
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 ripgrep fd-find tmux htop
mkdir -p /opt/local/bin/
cd /opt/local/bin/
curl -kLO https://raw.githubusercontent.com/TyrfingMjolnir/FileMaker-LetsEncrypt-Linux/refs/heads/master/GetSSL.sh
chmod +x GetSSL.sh
sudo bash /opt/local/bin/GetSSL.sh
I have no idea why the script downloaded says /bin/sh, /bin/bash works however.
If you are old school like me you will work with XML/XSLT
fmsadmin set cwpconfig enablexml=true
Testing that this service is online
curl -kL http://localhost/fmi/xml/FMPXMLRESULT.xml?-dbnames
There is also
fmsadmin SET CWPCONFIG ENABLEPHP=true
Do not forget to do fmsadmin RESTART WPE
in order to activate
Random shit that pleases me
alias v=/opt/local/bin/nvim
alias vi=/opt/local/bin/nvim
alias vim=/opt/local/bin/nvim