7 Aralık 2016 Çarşamba

Ubuntu Server 16.10 Üzerinde WEB uygulaması

Selam  😎

Ubuntu Server sanal makine kurulumunu ve bunun üzerinde Python-MySQL  WEB Server uygulamasını paylaşacağım. 

VirtualBox 

Inno Tek firması tarafından geliştirilen bir "Sanal Makine Yazılımı" dır. Bilgisayarınızda aynı anda birden fazla işletim sistemi çalıştırabilmenizi sağlayan programa sanal makine denir.[1]. Kurulum için öncelikli olarak gerekli olan bileşen VirtualBox. Kendinize ait olan ve son sürümünü VB sürümünü indirebilirsiniz. Buradan Linux ve Windows için indirilebilir dosyaları bulabilirsiniz.VirtualBox  


UBUNTU

Ubuntu, Linux tabanlı özgür ve ücretsiz bir işletim sistemidir.[2]VirtualBox'a Ubuntu Server kurmamız gerekiyor.Bu uygulamada Ubuntu Server 16.10 kullanıldı . Buradan indirebilirsiniz. Ubuntu


VirtualBox'ı açtığımızda sol üst taraftaki yeni butonuna tıklıyoruz. Karşımza aşağıdaki gibi Sanal Makine Oluştur penceresi çıkar . Belirlediğimiz isim, tür ve sürümü seçip sanal makinemizi oluştururuz. 


Oluşturduğumuz sanal makinenin depolama alanında denetleyici kısmı boş olarak gelir. Optik sürücü içeriğine ubuntu serverın iso uzantısını atmamız gerekir.


Ubuntu adlı sanal makinemizin ağ ayarlarını da yapmamız gerekiyor.


Şuna takılı kısmından NAT'ı seçip port yönlendirme yapıyoruz ve B.Noktası Yönlendirme butonuna tıklıyoruz. NAT seçmemizin nedeni ise sanal makine ve sanal makine iç yapılarında birbirinden tamamen bağımsız IP adreslerinden oluşmaları ve oluşurken dısarıdan ise aynı IP adresli olarak gözükmeleridir.


Karşımıza gelen ekran bu şekilde. Verilen değerler ile ana makine işletim sistemimizin ilgili portuna gelen bağlantılar , sanal makinemizin portuna yönlendirilir.



VirtualBox'ın görünümü bu şekilde olmalıdır.(Benim yaptığım diğer örnekler hariç...)


Sıra işletim sisteminin kurulumunda. Sanal makinemiz seçili iken göster butonuna tıklıyoruz. Dil seçimi , ülke seçimi , makine adı , kullanıcı adı ve parola gibi değerler alınır. Burada önemli olan parola ve adımızı bir yere not etmek olacak. Kurulum esnasında OpenSSH Server'ı onaylanmalı ,GRUB kurulmasına izin verilmeli. Aşağıdaki şekillerde bazı kesitler verilmiştir. 






Kurulumu bitirdikten sonra bizden kullanıcı adı ve parola isteyecek doğru girdiğimiz halde oturum açılacaktır.


PUTTY

Putty ağ üzerindeki Linux işletim sistemli sunucunuza/makinanıza terminal üzerinden bağlantı sağlayan boyut olarak oldukça küçük ama güçlü ücretsiz ve açık kaynak kodlu bir yazılımdır. Putty ile bağlantı yaptığınız sunucunuzu terminal üzerinden çeşitli komutlar ile yönetebilirsiniz. Daha çok gelişmiş linux kullanıcılarına hitap eder zira kullanıcı arayüzü yoktur tüm işlemleri komutlar ile yapmanız gerekir.[3] Buradan indirebilirsiniz. Putty 




Şimdi ise gerçek makinemiz üzerinden Putty aracılığıyla, sanal makinemize bağlanacağız. Bunun için ilk önce ana makinemizde arama kısmında “cmd.exe” yazarak komut istemini başlatınız ve “ipconfig” komutunu giriniz. Listelenenler arasında bağlı olduğunuz ağın ip adresini kopyalayınız ve Putty ekranındaki “Host Name” alanına bu adresi yapıştırınız. Daha sonra sanal makinemizi kurarken yaptığımız ağ yapılandırmasındaki “Bağlantı Noktası Yönlendirme” ekranına yazdığımız “ssh” için anamakine bağlantı noktasını, Putty ekranındaki “Port” alanına yazınız ve “Open” butonuna tıklayınız.


Bu işlemleri yaptıktan sonra aşağıdaki gibi ekran gelip bizden tekrar kullanıcı adı ve parola isteyecektir.Doğru girdiğimiz halde kodlarımı yazmaya başlayabiliriz.


Linux komutlarını bilmiyorsanız veya takıldığınız yer olur ise buradan yardım alabilirsiniz.

MySQL Veritabanı İşlemleri

Aşağıdaki komutu putty penceremize yazarak başlayacağız.

  •    sudo apt-get install mysql-server  ( MySQL-Server'ı yüklememizi sağlar.)

  •  sudo apt-get install python-mysqldb  (MySQL veritabanı için Python arayüzünü yüklememizi sağlar. )
  • mysql –u root -p (MySQL sunucuna bir root şifresi veriyoruz.)

  • create database ezgiveritabani;(Veritabanı adı ile oluşturulması)
  • show databases; (Olan veritabanı görüntülenir)


Veritabanının admin ve şifresi belirlenecek.
  • create user ‘EK’@’localhost’ identified by ‘ubuntuezgi’; (Admin : EK , Şifre : ubuntuezgi)

  • use veritabanim; (Veritabanı kullanılmadan önce yazılır.)

  • grant all on veritabanim.* to ‘MS’@’localhost’; (Grant ile izinler aktif olur.)
  • create table musteri(no int, ad varchar(20),bolum varchar(50)); (Tablo oluşturuyoruz)

  • insert into musteri values(‘1’,’Ezgi’,'Bilgisayar Muhendisligi'); (Örnek olarak tabloya ekleme )
  • select * from musteri; (Kayıtları görüntüler)
  • quit; (MySQL - Server 'dan ayrılıyoruz.) BYE 👋

PYHTON İle Kodlama
  • sudo apt-get install python-pip (Python kurulumu)



  • sudo apt-get install python-django (Django frameworkü yüklenmesi için)

Proje oluşturmamız gerekecek. Benim projemin adı myproject olacak.
  • django-admin startproject myproject (\home\ubuntu\mysite adresinde oluşuyor.)
  • sudo mc (Projenin oluşup oluşmadığına bakılır.)

Metin düzenleme aracı üzerinden bir dosyayı düzenleyeceğiz. Linux’ta metin düzenleme programına giriş acalığını sağlayan “pico” ya da “nano” komutlarıdır. İkisi de aynı görevi görmektedir. Oluşturulan dosyalar Ubuntu’ya özgü bir arayüzde düzenlenir , alt tarafta kısayollar ile yapılacak işlemler belirtilmiştir. Dosya Linux Home kaydedilir.


  • sudo nano ~/myproject/myproject/settings.py (dosyanın içerisine girilir)

Dosyanın içindeki değerlere kendi oluşturduğumuz verileri yazıyoruz.


  • cd myproject (projenin içine girilir)
  • python manage.py syncdb ( komuttan sonra kullanıcı adı, e-mail adresi ve şifre girmemizi istiyor.)


  • python manage.py runserver 0.0.0.0:8000 (projeyi ağa sunar)


Tarayıcıda “localhost:8080” yazarak yayınladığınız siteye ulaşılabilir.


  • sudo nano ~/myproject/myproject/views.py (yeni bir .py uzantılı dosya oluşturalım)


  • sudo nano ~/mysite/mysite/urls.py (Django projesinde hazır olarak bulunan urls.py dosyasına ekleyeceğiz)


http://localhost:8080/deneme/




terminale "cd mysite" ve ardından "python manage.py runserver 0.0.0.0:8000" yazıp, anamakinemizin tarayıcısına "http://localhost:8080/deneme/" yazarsak veritabanından çektiğimiz verileri görebiliriz.



Murat Özalp hocamıza sevgiler ... 😄😄😄




















KAYNAKLAR
[1]http://e-bergi.com/y/VirtualBox
[2]https://wiki.ubuntu-tr.net/index.php?title=Ana_Sayfa
[3]http://ip-adresim.net/kutuphane/putty-nedir-nasil-kullanilir
[4]http://web.bilecik.edu.tr/vedat-marttin/2011/03/22/113/
[5]http://codehandbook.org/python-web-application-flask-mysql/
[6]https://blog.pythonanywhere.com/121/
[7]https://code.tutsplus.com/tutorials/creating-a-web-app-from-scratch-using-python-flask-and-mysql--cms-22972
[8]https://toneofcomputer.blogspot.com.tr/





Hiç yorum yok:

Yorum Gönder