Monthly Archives: June 2020

macOS Big Sur

My 2012 MacBook Air has hit the end of line for OS updates. It was left out of MacOS Big Sur compatibility. Over 7 years and still (quite) strong. The only issue is the cute 4GB RAM.

Macs compatible with macOS Big Sur:

  • 2015 and later MacBook
  • 2013 and later MacBook Air
  • Late 2013 and later MacBook Pro
  • 2014 and later iMac
  • 2017 and later iMac Pro
  • 2014 and later Mac mini
  • 2013 and later Mac Pro

Eh, on a side note, I’ve just upgraded my phone to iPhone 11, coming from iPhone 7 it’s a big upgrade (I’ve been using Nokia 7.1 for about 4 months along the way though). Couldn’t be happier with its performance, camera, and battery life!

Install NGINX Proxy Manager (NPM)

NGINX Proxy Manager

NGINX Proxy Manager (NPM) ini adalah salah satu reverse proxy dari beberapa reverse proxy lainnya yang lebih terkenal di internet seperti traefik, haproxy, dan lain-lain. Tapi menurut saya NPM ini adalah yang paling mudah dideploy. Tampilannya sederhana, rapi, dengan fitur-fitur yang straight to the point dan tidak membingungkan.

Beberapa fitur yang paling sering dipakai antara lain:

  1. Proxy Host
    Proxy Host ini akan menjadi entry point setiap web service yang akan diforward. Di sini kita bisa menambahkan SSL secara otomatis untuk semua domain web service menggunakan Letsencrypt, dan mengaktifkan NGINX caching.
  2. Redirection Host
    Redirection Host akan melakukan redirect seluruh request yang datang untuk suatu domain, dan melakukan forward ke domain yang lainnya. Fitur ini berguna misal kita punya domain lama yang masih ada indexnya di Google, dan kita ingin agar seluruh pengunjung yang menuju domain lama tersebut ke domain yang baru.
  3. Stream
    Salah satu fitur yang relatif baru dari NGINX. Stream akan melakukan forward secara langsung untuk protokol TCP atau UDP ke komputer yang lain. Kalau misal kita punya server dengan DDOS protected IP, akan sangat berguna sekali. Misal untuk melindungi game servers, atau FTP dan SSH server.

NPM berbasiskan Docker container. Jadi, bagi orang yang sangat awam dengan Docker seperti saya, catatan yang dibuat ini akan membantu saya dan (semoga) juga orang lain untuk memulai dan mengingatnya.

Tutorial ini menggunakan distribusi Linux Ubuntu 18.04. Tapi karena Docker-based, jadi seharusnya bisa menggunakan Distro linux apa saja.

Prerequisite yang harus diinstall adalah Docker dan Docker-Compose plugin. Cara menginstall Docker dan compose plugin ada di sini.

Setelah semua diinstall lalu update dan bersihkan distro dengan cara ini (asumsi semua command dilakukan dengan user root):

apt update
apt upgrade
reboot
apt autoremove

Sekarang saatnya kita menginstall NPM.

mkdir npm
cd npm

Buat satu file konfigurasi, yaitu docker-compose.yml

touch docker-compose.yml

Jadi, isi dalam folder npm akan ada dua file ini:

root@scylla:~/npm# ls -lh
total 16K
-rw-r--r-- 1 root root 637 Jun 2 16:03 docker-compose.yml

Edit file itu dengan vim atau nano atau terserah, isinya seperti ini:

version: "3"
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      # These ports are in format <host-port>:<container-port>
      - '80:80' # Public HTTP Port
      - '443:443' # Public HTTPS Port
      - '81:81' # Admin Web Port
      # Add any other Stream port you want to expose
      # - '21:21' # FTP

    # Uncomment the next line if you uncomment anything in the section
    environment:
      # Uncomment this if you want to change the location of
      # the SQLite DB file within the container
      # DB_SQLITE_FILE: "/data/database.sqlite"

      # Uncomment this if IPv6 is not enabled on your host
       DISABLE_IPV6: 'true'

    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

Masih di dalam folder npm, eksekusi perintah ini untuk mendownload dan membuat containernya:

docker compose up -d

Setelah satu atau dua menit, kita akan punya fully working NGINX manager. Bisa diakses di alamat http://ala.mat.ip.address:81 atau http://hostname:81.

Login dengan username [email protected] dan password changeme

Developers site – https://github.com/jc21/nginx-proxy-manager – all credit goes to him.

IU – 에잇 (eight) (ft. SUGA)

So are you happy now?
Finally happy now, are you?
Well, I’m exactly the same
I think I’ve lost everything
Everything comes as it pleases and leaves without a goodbye
Like this, I don’t want to love anything
Where the sun has set, as far as the sun sets
I travel in those memories

Under an orange sun
We dance with no shadows
There is no such thing as decided farewells
Meet me in that memory that was once beautiful
Forever young

Oh oh oh, oh oh oh oh
Oh oh oh, oh oh oh oh
Forever we young
Oh oh oh, oh oh oh oh
If it is this kind of nightmare, I won’t ever wake up

(SUGA)
Island, yeah, here is an island
A small one that we made with each other
Yeah, um, forever young, the word “forever” is a sandcastle
A farewell is like a disaster cast
A morning greeted along with yearning
Let us both pass this eternity
Surely meet once more on this island

Like what someone said as they were consoling me, passing
It isn’t that easy to forget a memory merely big as a handspan
Even as time goes by, still
At that place which takes hold of me

Under an orange sun
We dance with no shadows
There is no such thing as decided goodbyes
Meet me in that memory that was once beautiful
Forever young

We lie down atop of each other
Share stories that aren’t of sorrow
There is no such thing as gloomy endings
I will forever meet you in this memory
Forever young

Oh oh oh, oh oh oh oh
Oh oh oh, oh oh oh oh
Forever we young
Oh oh oh, oh oh oh oh
If it is this kind of nightmare, I won’t ever wake up

Anjir sejak kapan saya jadi suka lagu KPOP wkwkwkwkwk