Webmaster
Congratulations on becoming the new Webmaster of the IEEE Student Branch at the University of California San Diego!
What to know
We selfhost a lot of different services. This website, https://onboarding.ieeeucsd.org and many others are ran by us using our server.
One specific one to look out for is Gitlab (the github alternative).
Links to Pin:
- https://cloud.ieeeucsd.org manages all of our docker services, including authentication and the different websites.
- https://auth.ieeeucsd.org is the authentication website.
- db.ieeeucsd.org uses appwrite as our database
- https://git.ieeeucsd.org/explore/repos is our selfhosted Github
Gitlab
We use gitlab as a way to manage our repos. As a webmaster, you would be invited to access any webmaster-related repos that we may have. You would each have your own gitlab account using your ieeeucsd.org
email and you have unlimited CI/CD on our server.
Github Desktop
Gitlab supports Github Desktop.
To clone our repo, you simply need the repo url. To push to the repo there are two different ways:
- If a prompt shows up, you can sign into your account using your gitlab credentials
- You can create an SSH key on gitlab for the devices you use. You may use one ssh key for all your devices or create a new one each time.
Auto deploying a website
Because we use gitlab, we need to make a webhook request in order to auto deploy to our website. You can view the webhooks tab for our main https://ieeeucsd.org website to see how it is implement.
Managing a website
There are two main things when managing a website. Developing it (such as frontend and backend code) as well as deploying it (making sure it actually runs without any issues).
Developing a website
All of the websites need to be made using ASTROJS. React was the framework we used previously, however, to compensate for the other possible frameworks (VueJS, ReactJS, etc). Astro is also based off of HTML which doesn’t require too much of a learning curve compared to others.
Deploying a website
Since we selfhost everything, all of our websites (and services) are deployed on our cloud (https://cloud.ieeeucsd.org). Everything is hosted on the server side (so no SSG for our websites)
We currently use Coolify. If Coolify asks during onboarding, the server is running on localhost.
DNS
All of our DNS records are ran by cloudflare. This is where we pay for our domain, ieeeucsd.org, and where all of the backend networks take place. Do NOT modify any existing records unless you know what you’re doing. These include the server encryption settings.
Mail Server
Both current and past officers are allowed to get their own ieeeucsd.org email addresses. The main webmaster will issue this, however, the VC internal as well as the President will have access to this too.
Billing
There are recurring billings you need to look out for:
- VPS (every month)
- Domain (every year)
- Mail Server (every three years)
The billing account is handled by the VP Finance but it’s your responsiblity to have the yearly budget set as well as making sure all the invoices are paid.