Files
Website-2026/README.md
T
2026-07-09 01:49:59 +02:00

1.8 KiB

Marcus Allison — Portfolio (Static site)

Quick deploy instructions for an nginx host (Debian/Ubuntu):

  1. Copy files to the web root on the server:

    sudo mkdir -p /var/www/marcus sudo cp -r "*" /var/www/marcus/ # run from the project folder or copy files individually sudo chown -R www-data:www-data /var/www/marcus

  2. Place the nginx server block (nginx/marcus_allison.conf) into /etc/nginx/sites-available/ and enable it:

    sudo cp "nginx/marcus_allison.conf" /etc/nginx/sites-available/marcus_allison sudo ln -s /etc/nginx/sites-available/marcus_allison /etc/nginx/sites-enabled/

  3. Test nginx config and reload:

    sudo nginx -t sudo systemctl reload nginx

  4. (Optional) Provision HTTPS with Certbot (Let's Encrypt):

    sudo apt update && sudo apt install certbot python3-certbot-nginx sudo certbot --nginx -d portfolio.example.com -d www.portfolio.example.com

  5. Docker alternative (serve static site with nginx container):

    docker run --rm -p 80:80 -v "$(pwd):/usr/share/nginx/html:ro" nginx:stable

Customize:

Photography gallery:

  • To regenerate images/manifest.json after adding/removing photos, run:
python3 scripts/generate_manifest.py
  • Alternatively, enable Nginx directory listing for /images/ so the site can probe the directory. Example server block fragment for /images/ only:
location /images/ {
   alias /var/www/marcus/images/;
   autoindex on;
}

Editing the Git link:

  • Update the header Git link in index.html at the element with id git-link to your repository URL.

If you want, I can also:

  • Add a Docker Compose service for a static site + automatic certs.
  • Produce a small resume/JSON-LD metadata file for SEO.