Marinus Klasen

Marinus Klasen

  • Development
  • Consultancy
  • Developer Resources
  • Blog
  • Contact

March 28, 2022

Halcyon Part 3: Simplified

Marinus Klasen

Hey! Here’s the simplified version of Halcyon Part 3. This version is created as a follow-along and will set the foundation for other videos as well. The idea is to eventually have your own mini-server running at home or at the office. But, since purchasing hardware is quite a barrier, I decided to run a sample service in the clouds before going any further.

I’ll keep it simple in here. These are the steps you need to follow, and the video below will help you through.

Steps to follow
  1. Go to https://try.digitalocean.com/freetrialoffer/
  2. Confirm your identity with a payment method
  3. Create a new droplet
  4. Login to the web console
  5. Run: git clone https://github.com/mklasen/halcyon.git
  6. Change to the cloned directory (cd halcyon)
  7. Install docker https://docs.docker.com/engine/install/ubuntu/
  8. Install docker-compose https://docs.docker.com/compose/install/
  9. Run docker-compose pull
  10. Run nano /etc/systemd/resolved.conf and uncomment and set DNSStubListener to No.
  11. Reboot your droplet by entering reboot
  12. Run nano docker-compose.yml and change {your_droplet_ip_address} to your droplet’s IP address.
  13. Run docker-compose up
  14. Set your computer’s DNS server to use the DNS service provided from your droplet which is your droplet’s IP address.
  15. Make sure your server it still able to resolve DNS by letting it use our dockerized DNS service: run sudo nano /etc/resolv.conf and change 127.0.0.53 to 127.0.0.1.
What you’ll do:
  1. Create a droplet in DigitalOcean
  2. Login using the web console
  3. Install docker and docker-compose
  4. Clone an existing configuration and make small changes
  5. Set your computer’s DNS server to the droplet
What you’ll learn/experience

You’ll get a glimpse of server configuration, how to create a new droplet in DigitalOcean. You’ll get an idea of how DNS resolution works and you’ll be amazed by the fact that what you type into your browser’s URL bar is actually handled by your own server, that easy. Without any DNS configuration or anything, and only for you.

What’s next?

Next up is your own local setup. It does not make sense so run this on a cloud server. You’ll need speedy access, and you can’t be dependent on the internet for your local DNS requests to resolve.

About Marinus Klasen

Marinus has been working in software/web development for more than a decade. Since 2020 his attention shifted on sharing knowledge and developing products and tools for sharing knowledge.

Marinus Klasen on Twitter

Looking for a WordPress expert?
Hire top notch developers on Codeable!

Consult an expert

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Get in touch

Contact me using the details below

Marinus Klasen

Wilhelmina van Pruisenweg 35, 2595 AN Den Haag

marinus@mklasen.com
twitter.com/marinusklasen
linkedin.com/in/marinusklasen

  • GitHub
  • LinkedIn
  • Twitter

Have you read?

  • Elementor Widget UsageMarch 27, 2025
  • Programmatically showing popups with ElementorMarch 25, 2025
  • The Elementor sanitize_settings errorSeptember 12, 2024
  • Announcing.. Wooping Shop Health!June 13, 2024
  • Swiper setup when using wp-scriptsMarch 14, 2024

Copyright © 2025 ยท Marinus Klasen | Webdesign by Team Rood