http_only_nginx_templates | ||
nginx_templates | ||
templates | ||
test | ||
.gitignore | ||
backup.sh | ||
docker-compose.yml | ||
LICENSE.md | ||
options-ssl-nginx.conf | ||
production.env | ||
README.md | ||
setup.sh | ||
test-in-vm.sh | ||
test.env | ||
website_git_post_receive_hook.sh |
Libre-Chip server setup scripts
Testing Locally
-
Using
libvirt
(you can use thevirt-manager
gui frontend), create a VM with 6GB RAM and 4 CPUs and at least 30GB of disk space running Debian 12 with a btrfs root filesystem. The VM should be namedlibre-chip.test
. Do NOT create a non-root user yet, that comes later. -
Install some packages in the VM:
apt install openssh-server sudo
-
Copy your ssh public key from your user on the host (e.g.
~/.ssh/id_rsa.pub
) and put it in the VM's/root/.ssh/authorized_keys
and make sure both that file and the parent.ssh
directory have been chmod-ed to600
. -
Get the IPv4 address of the VM:
ip addr
- Add the following lines to your host's
/etc/hosts
:
<public-IP-address-of-your-host> pebble
<IP-address-of-your-VM> libre-chip.test
<IP-address-of-your-VM> librechip.test
<IP-address-of-your-VM> mail.libre-chip.test
<IP-address-of-your-VM> mail.librechip.test
<IP-address-of-your-VM> git.libre-chip.test
<IP-address-of-your-VM> git.librechip.test
<IP-address-of-your-VM> forum.libre-chip.test
<IP-address-of-your-VM> forum.librechip.test
- (Optional) Create a non-root user with UID 1001, being careful to not use UID 1000 or GID 1000:
adduser --uid 1001 your-user-name
adduser your-user-name sudo
- logout from the VM but leave it running.
Create a snapshot of the VM while its running but no users are logged in, and name the snapshot start
.
Now you're ready to test! Just run ./test-in-vm.sh
on the host, it will automatically reset the VM and login over ssh and run the setup script.
Installing on the public server
Not Tested Yet!
Make sure the VM has no users with UID 1000, and that the VM has a btrfs root filesystem.
Run the setup script on the VM:
sudo ./setup.sh --production