How to set up Bob on DigitalOcean (mostly easy)

This will install Bob on a server and sets it up with a password so that you can access it from anywhere you have an internet connection. Bob lets you have multiple wikis and manage wikis (create, rename and delete them) from within the wiki itself.

The instructions assume that you have a domain already, they take care of everything after that.
The instructions are here: README.md · main · OokTech-TW / BobDocker · GitLab
There are 9 steps, hopefully they are clear enough.

5 Likes

Hi @inmysocks, I’m coming out of TiddlyWiki retirement to try this - I follow your progress with BOB :slight_smile:

This is a little out of my league but tried it anyways and it didn’t quite work. Maybe you or somebody else can recognize what I did wrong?

Notes:

  • In step 1 you suggest using the dot-dot-dot and click “reset root password” - which I don’t see on mine, so I had to skip that?
  • I think I got my DNS setup correctly. I have a domain on Google Domains that I tried repurposing. I found an article suggeting how to do it, so I followed those directions - don’t know how to tell if I did that right.
  • I’ll attach my log with the password changed to PASSWORD, but the only concerning lines I see are:
    • ln: failed to create symbolic link ‘/user/bin/certbot’: No such file or directory
    • Timeout during connect (likely firewall problem)
    • Hint: The Certificate Authority failed to download the challenge files from the temporary standalone webserver started by Certbot on port 80. Ensure that the listed domains point to this machine and that it can accept inbound connections from the internet.
    • Some challenges have failed.

Here’s the log in .tid format (can’t upload a .txt I guess) Log.tid (21.6 KB)

Thanks for continuing to develop BOB!

from that log it is a DNS problem, it looks like everything else worked.

The first line about failing to create the symbolic link isn’t a problem because it worked later, so that step must be unneeded.

The other three are all consistent with a problem with the DNS setup. I will look at the directions you linked to and see if there is something obvious to check, maybe we will be lucky.

And it is good to hear that the password part isn’t needed, looking at what I was doing to write the instructions I think I see why I thought it was necessary, but I can take that part out.

Thanks @inmysocks , on the Google Domain side it now looks like this:

image

And then in DigitalOcean it looks like this:

Even if the DNS is not working, I thought directly using the IP it’s mapped to would work?

image

That doesn’t either… Let me know if you see something wrong. My domain is obviously adamstobbe.com - do I need something in front of that at any point? like stobot.adamstobbe.com? I’m not sure if that’s needed somewhere…

Hi there @inmysocks checking to see if you had any thoughts on how to fix it before I give up and decommission what I setup.

Anyone else here try this and get it running? I think this is a really exciting development!

as long as you put adamstobbe.com when you ran the setup script and the ipaddress is correct than I don’t know what the problem is. Do you have anything else on adamstobbe.com?

@inmysocks I just followed the instructions and managed to get it working without any issues, thank you.

@stobot I suspect the issue is related to the certificate, see the following from the log:

Certbot failed to authenticate some domains (authenticator: standalone). The Certificate Authority reported these problems:
Domain: adamstobbe.com
Type: connection
Detail: 159.65.220.174: Fetching http://adamstobbe.com/.well-known/acme-challenge/lwqrfoI9ZTcx-aNHwrElMBM27FP-Lnd5J-gd5RbyVCM: Timeout during connect (likely firewall problem)

Hint: The Certificate Authority failed to download the challenge files from the temporary standalone webserver started by Certbot on port 80. Ensure that the listed domains point to this machine and that it can accept inbound connections from the internet.

Some challenges have failed.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

Did you create a new droplet or do you have some other services running on there?

You could check the letsencrypt log file, or modify the install script to run certbot with the -v argument.

I do not, I was just using it to forward to my linked in, but repurchased it just to reduce expense of this experiment.

I created a new droplet. I have never used anything like this before. I signed up with DigitalOcean just for this experiment. I’m hoping that due to my inexperience that I just did something simple wrong.

I’ll hit the destroy and try it again just in case, did that once before, but maybe 3rd try is the charm. Maybe I try recording it on video this time in case that gives ideas.

Thanks for the help.

That sounds sensible. Do make sure to add the domain to the droplet as well and perhaps run a modified version of the script that runs certbot with the -v argument.

I’m willing to try the “modified version” but how would I do that?

After executing wget https://gitlab.com/ooktech-tw/bobdocker/-/raw/main/install.sh edit the install.sh file using your favourite text editor, for example

nano install.sh
change the line:
sudo certbot certonly --standalone
to
sudo certbot certonly --standalone --verbose

1 Like

Ok, will try @saqimtiaz

That sounds like editing Jed’s file? Sorry I don’t know git or Linux, so trying to understand as I go. If I’m allowed to edit his file, that won’t do something bad for him or others I hope.

You are downloading a copy of Jed’s file, which you need to do anyway before you run that script. Before running your local copy of it, you are changing the certbot command in that local copy to provide more verbose output of what happens, so that hopefully the logs can help debug the problem.

Here is me retrying to install it in video form Bob Docker DigitalOcean - YouTube

Attached is the text from the console when completeInstallLog.tid (14.0 KB) (note this is with the --verbose added)

After recording the video, I re-read the instructions on the DNS side and re-added the “A” record per the instructions. I got confused during recording.

Could you also post the contents of /var/log/letsencrypt/letsencrypt.log ?

In the terminal/console, type the following and then copy the contents:
nano /var/log/letsencrypt/letsencrypt.log

letsencrypt.log.tid (22.1 KB)

This should be good, had to copy/paste screen-by-screen (just in case I overlapped accidentally)

I will take a look at the log a little later. However, any idea why your domain shows the following message?

image

Ha - no idea… I’ve traditionally just had it point to my linkedin account for business purposes (which worked fine), never heard of Gimkit. That’s a little worrying.

Apparently the security certificate is issued by gimkitconnect.com.