Multy domain in docker

Posted on

pastikan anda telah menginstall docker dan nginx

  • cara install docker di ubuntu https://docs.docker.com/engine/install/ubuntu/

dan jalankan juga dockernya .

contoh :

docker run -d --hostname git.ilham.id \
-p 444:443 -p 8081:80 -p 2222:22 \
--name gitlabserver \
--restart unless-stopped \
--volume /storage/gitlab/config:/etc/gitlabserver \
--volume /storage/gitlab/logs:/var/log/gitlabserver \
--volume /storage/gitlab/data:/var/opt/gitlabserver \
gitlab/gitlab-ce:latest

untuk menginstall nginx jalankan perintah berikut

sudo apt install nginx

kemudian buat file konfigurasi di direktori /etc/nginx/sites-available/

contoh : sudo nano git.ilham.id

kemudian masukan file konfigurasi seperti di bawah ini, hanya perlu menyesuaikan dengan kebutuhan anda.

server {
  listen        80;
  server_name   blog.ilham.id;

  location / {
    proxy_pass  https://blog.ilham.id:8081;
  }
}

jadi maksud dari file konfigurasi di atas adalah miroring https://blog.ilham.id:8081/ menjadi blog.ilham.id,

setelah membuat file konfigurasi git.ilham.id ketika perintah di bawah ini untuk membuat Symbolic link ke direktori etc/nginx/sites-enabled/

ln -s /etc/nginx/sites-available/git.ilham.id /etc/nginx/sites-enabled/

cek konfigurasi

nginx -t

restar nginx

systemctl restart nginx

Tambahan : Cara instalasi ssl

1 Redirect http atau port 80 ke https atau port 443

buat virtual host di /etc/nginx/sites-available

nano git.ilham.id.port80

kemudian masukan konfigurasi seperti di bawah ini

server {
listen 80;
server_name git.ilham.id;
#access_log /var/log/nginx/nama_domain.com-access.log;
#error_log /var/log/nginx/nama_domain.com-error.log;
rewrite ^ https://$server_name$request_uri? permanent;
}

kemudian buat lagi virtual host di /etc/nginx/sites-available

nano git.ilham.id

masukan konfigurasi berikut

server {
listen 443 ssl;
server_name git.ilham.id;
#access_log /var/log/nginx/domain.com-access.log;
#error_log /var/log/nginx/domain.com-error.log;
#root /var/www/nama_domain.com;

ssl on;
ssl_certificate /home/ilham/lokasissl/git.ilham.id/sertifikat.crt;
ssl_certificate_key /home/ilham/lokasissl/git.ilham.id/privat.key;

location / {
proxy_pass http://git.ilham.id:8081;
}
}

disini saya menggunakan ssl dari namecheap.com, jadi silahkan beli ssl terlebih dahulu. kemudian generate csr disini https://decoder.link/csr_generator . setelah mendapatkan sertikatnya dan privat keynya, silahkan upload ke server atau copy paste ke server.

kemudian cek konfigurasi

nginx -t

dan lakukan restart webserver

systemctl restart nginx

Leave a Reply

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