Recent updates ποΈ
π€ NVDA announced 2nd quarter earnings of $13.51bn doubling YoY growth
π ARM and Klaviyo IPO’s upcoming
π¦ Zepto becomes India’s first unicorn of 2023 (Series E funding of $200 million)
π Learning Finance II and Global Econ!
Switching from disqus to remark42
I have been looking at open source alternatives to disqus and was considering remark42 given it’s lightweight and ease of self hosting options. Finally settled on hosting remark42 on a Google Compute (e2-micro) instance (link to free tier offerings) and deploying with docker compose.
Pro Tip: To get a free tier GCP e2-micro vm - ensure you select e2-micro 0.5 shared core VM with (
balanced) standard disk (10gb)
Remark42 allows you to have a self-hosted, lightweight, and simple (yet functional) comment engine , which doesn’t spy on users. It can be embedded into blogs, articles or any other place where readers add comments. (Scroll below to see a demo of this in action!)
Configuration: remark42 server
Big shout out π to MK from Dev Bits and Bytes whose blog was the primary source for my configuration.
Here is an example of my docker-compose.yml -
services:
remark:
# remove the next line in case you want to use this docker-compose separately
# as otherwise it would complain for absence of Dockerfile
build: .
image: umputun/remark42:latest
container_name: "remark42"
hostname: "remark42"
restart: always
logging:
driver: json-file
options:
max-size: "10m"
max-file: "5"
# uncomment to expose directly (no proxy)
ports:
- "8080:8080"
environment:
- REMARK_URL=https://remark42.thoughtinvest.com
- SITE=remark42.thoughtinvest.com
- DEBUG=true
- AUTH_ANON=true
- AUTH_GOOGLE_CID=XXXXX.apps.googleusercontent.com
- AUTH_GOOGLE_CSEC=XXX-XXXX
#- AUTH_GITHUB_CID
#- AUTH_GITHUB_CSEC
# Enable it only for the initial comment import or for manual backups.
# Do not leave the server running with the ADMIN_PASSWD set if you don't have an intention
# to keep creating backups manually!
# - ADMIN_PASSWD=<your secret password>
volumes:
- ./var:/srv/var
Configuration: nginx
I used nginx as the the reverse proxy for the web app hosted on 8080. Here’s the conf file for nginx, SSL is managed by certbot -
server {
server_name remark42.thoughtinvest.com;
location / {
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:8080;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/remark42.thoughtinvest.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/remark42.thoughtinvest.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = remark42.thoughtinvest.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
listen [::]:80;
server_name remark42.thoughtinvest.com;
return 404; # managed by Certbot
}
I am looking forward to continue to add more features to the site and overall make the experience as self managed as possible.
Cheers π₯