Furkan Bilgin


Cloud & System Devops Engineer @Digiturk / Formerly System Manager @Tekhnelogos
Founder @SentezOfis
TB1FBI
[email protected]
Share: 

Ubuntu 20.04 Sunucu Üzerine Docker Compose ile Nginx Proxy Manager Kurulumu

Bu öğreticide sizlerle Ubuntu 20.04 işletim sistemine sahip bir sunucuda docker compose ile Nginx Proxy Manager kurulumunu göreceğiz.

Kuruluma başlamadan önce sunucuda docker engine ve docker compose kurulu olması gerekmektedir.

Eğer kurulu değilse, kurulum yönergesi için bu sayfayı ziyaret edebilirsiniz.

İşlemlere başlamadan önce sunucunuzun yedeğini almanızı tavsiye ederim. (snapshot, full backup vs.)

Proxy Server Nedir?

Proxy sunucusu, client ile server arasında bir köprü görevi görür. Proxy serverlar kullanım amacınıza bağlı olarak değişen düzeylerde işlevsellik, güvenlik ve gizlilik sağlar. Proxy server kullanıldığında servera gönderilen istekler proxy üzerinden geçerek servera ulaşır. Aynı şekilde dönen cevaplarda proxy üzerinden clienta döner.

Picture description

Nginx Nedir

NGINX açık kaynak bir web sunucu yazılımıdır. Web sunucusunun yanında proxy server, reverse proxy server, cache, load balancer gibi özellikleri bulunmaktadır. Bakınız.

Nginx Proxy Manager Nedir

Nginx proxy yöneticisi Docker üzerinde çalışan bir reverse proxy yönetim sistemidir.

Artık kuruluma geçebiliriz.

Nginx Proxy Manager Docker Compose Kurulumu

Kuruluma başlamadan önce yedeğinizi mutlaka alınız. Öncelikle ben update işlemi yapacağım.

sudo apt-get update -y

Picture description

Şimdi docker uygulamalarımı koyduğum bir klasör açıyorum onunda içinde nginx proxy manager compose dosyasını koymak için nginx-proxy-manager isminde bir klasör oluşturuyorum ve oluşturduğum klasörün içine giriyorum.

mkdir docker
cd docker
mkdir nginx-proxy-manager

Picture description

Oluşturduğumuz klasörün içinde docker-compose.yml ismiyle bir dosya açıyoruz. Burada nginx proxy manager için gerekli docker compose tanımlamalarını yapacağız.

nano docker-compose.yml

Picture description

Aşağıdaki kodun tamamını dosyanın içine yapıştırınız. Boşluk ve syntax kaynaklı hatalar alabilirsiniz. Güncel docker compose dosyasına bu linkten ulaşabilirsiniz.

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
      
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

Conf dosyamızı kayıt edip çıktıktan sonra docker compose up edebiliriz.

docker compose up -d

Picture description

Kurulum bittikten sonra çalışan containerların listesini çekebilir ve durumlarını görebiliriz.

docker ps

Picture description

Eğer container up olmazsa önce conf dosyasını kontrol edin bu yeterli olmazsa container loglarını görüntüleyin.

docker compose logs

Picture description

Şimdi sunucu ip adresimizin sonuna admin web portunu ekleyerek admin paneline girebiliriz. Ben http://192.168.2.71:81 yazarak giriyorum. Defaul admin user bilgileri ile giriş yaptıktan sonra bu bilgileri değiştirmenizi isteyecektir.

Email:    admin@example.com
Password: changeme

Picture description

Giriş yaptıktan hemen sonra admin user email adresini değiştirmenizi isteyecektir.

Picture description

Eposta adresini değiştirdikten sonra defaul password değişimini isteyecektir.

Picture description

Tüm bunları yaptıktan sonra herşey hazır hale gelmiştir.

Picture description

Resmi sitesinden örnek uygulamaları bu linke tıklayarak inceleyebilirsiniz.

Not: Bazı kelime ve kavramları yanlış kullanmış olabilirim. Düzeltme için lütfen e-mail atınız.

, , , , , , ,