Ubuntu 18.04 Üzerine JupyterLab Ortamı Kurulumu: Kapsamlı Bir Rehber
Giriş: JupyterLab Nedir ve Neden Kullanmalısınız?
JupyterLab, Jupyter projesinin yeni nesil web tabanlı kullanıcı arayüzüdür ve bilimsel hesaplama, veri bilimi, makine öğrenimi ve interaktif geliştirme için güçlü ve esnek bir ortam sunar. Geleneksel Jupyter Notebook’un tüm özelliklerini barındırmasının yanı sıra, çoklu sekme arayüzü, entegre dosya gezgini, terminal, konsol ve gelişmiş uzantı desteği gibi modern IDE (Entegre Geliştirme Ortamı) özellikleriyle gelir. Bu sayede, aynı arayüz içinde kod yazabilir, verileri görselleştirebilir, belgeler oluşturabilir ve terminal komutları çalıştırabilirsiniz. JupyterLab’ın modüler yapısı, kullanıcıların çalışma alanlarını kendi ihtiyaçlarına göre özelleştirmelerine olanak tanır. Python, R, Julia gibi birçok programlama dili için kernel desteği sunarak, farklı dillerde projeler geliştiren profesyoneller için vazgeçilmez bir araç haline gelmiştir.
Peki, neden Ubuntu 18.04 üzerinde JupyterLab kurulumuna odaklanıyoruz? Ubuntu 18.04 LTS (Uzun Süreli Destek) sürümü, sunucu ortamlarında ve geliştirme makinelerinde yaygın olarak kullanılan, kararlı ve güvenilir bir işletim sistemidir. Geniş topluluk desteği, zengin paket deposu ve uzun süreli güvenlik güncellemeleri sayesinde, geliştiriciler için sağlam bir temel sunar. Bu rehber, Ubuntu 18.04’ün kararlılığı ile JupyterLab’ın esnekliğini bir araya getirerek, hem yerel geliştirme ortamları hem de uzaktan erişilebilir sunucu tabanlı çözümler için kapsamlı bir kurulum süreci sunmayı amaçlamaktadır. Bu sayede, veri analistleri, makine öğrenimi mühendisleri ve araştırmacılar, projelerini güvenilir ve verimli bir ortamda yürütebilirler.
Ön Koşullar
JupyterLab ortamını Ubuntu 18.04 üzerine başarıyla kurmak için bazı temel ön koşulların yerine getirilmiş olması gerekmektedir. Bu ön koşullar, kurulum sürecinin sorunsuz ilerlemesini sağlayacak ve olası hataların önüne geçecektir:
- Ubuntu 18.04 Yüklü Sistem: Masaüstü veya sunucu sürümü fark etmeksizin, çalışan bir Ubuntu 18.04 işletim sistemine sahip olmanız gerekmektedir. Bu rehberdeki komutlar, Ubuntu’nun standart yapılandırmasına uygun olarak hazırlanmıştır.
- Temel Linux Komut Satırı Bilgisi: Terminal üzerinden komut çalıştırma, dizinler arasında gezinme (
cd), dosya oluşturma/düzenleme (nanoveyavim), paket yükleme (apt) gibi temel Linux komutlarına aşina olmanız beklenir. - İnternet Bağlantısı: Gerekli paketleri ve bağımlılıkları indirmek için aktif bir internet bağlantısı şarttır.
- Sudo Yetkisine Sahip Bir Kullanıcı: Sistem genelinde değişiklikler yapabilmek için
sudo(superuser do) komutunu kullanma yetkisine sahip bir kullanıcı hesabınız olmalıdır. Genellikle, kurulum sırasında oluşturduğunuz ana kullanıcı hesabı bu yetkiye sahiptir.
Bu ön koşullar sağlandığında, JupyterLab kurulumuna güvenle başlayabiliriz.
Adım 1: Sistemi Güncelleme
Herhangi bir yazılım kurulumuna başlamadan önce, işletim sisteminizin ve kurulu paketlerinizin güncel olduğundan emin olmak en iyi uygulamadır. Bu adım, potansiyel bağımlılık sorunlarını önler, güvenlik açıklarını kapatır ve en yeni paket sürümlerine erişmenizi sağlar. Ubuntu’da sistem güncellemesi için aşağıdaki komutları kullanırız:
sudo apt update
Bu komut, sisteminizin paket listesini günceller. Yani, Ubuntu’nun resmi depolarından en son paket bilgilerini alır ve yerel paket indeksinizi yeniler. Bu işlem, hangi paketlerin yeni sürümlerinin mevcut olduğunu belirlememizi sağlar.
sudo apt upgrade
apt upgrade komutu ise, apt update ile güncellenen paket listesindeki tüm yüklü paketleri en yeni sürümlerine yükseltir. Bu işlem, mevcut yazılımlarınızdaki hata düzeltmelerini, performans iyileştirmelerini ve yeni özellikleri almanızı sağlar. Yükseltme sırasında sizden onay istenebilir; Y tuşuna basıp Enter’a basarak devam edebilirsiniz.
sudo apt autoremove
Son olarak, apt autoremove komutu, artık ihtiyaç duyulmayan veya diğer paketler tarafından otomatik olarak yüklenmiş ancak artık kullanılmayan bağımlılıkları sistemden kaldırır. Bu, disk alanından tasarruf etmenize ve sisteminizin daha düzenli kalmasına yardımcı olur. Bu adımları tamamladıktan sonra, sisteminiz JupyterLab kurulumu için hazır hale gelmiş olacaktır.
Adım 2: Python 3 ve pip Kurulumu
JupyterLab, büyük ölçüde Python ekosistemi üzerine inşa edilmiştir. Bu nedenle, sistemimizde uygun bir Python 3 sürümünün ve Python paket yöneticisi olan pip‘in kurulu olması esastır. Ubuntu 18.04, varsayılan olarak Python 3.6.x sürümü ile gelir. Bu sürüm, JupyterLab için yeterlidir.
Öncelikle, sisteminizdeki Python 3 sürümünü kontrol edelim:
python3 --version
Bu komutun çıktısı genellikle Python 3.6.x şeklinde olacaktır. Eğer Python 3 kurulu değilse veya çok eski bir sürümse (ki Ubuntu 18.04’te bu pek olası değildir), aşağıdaki komutla kurabilirsiniz:
sudo apt install python3
Şimdi, Python paketlerini yönetmek için pip‘i kurmamız gerekiyor. Ubuntu 18.04’te pip‘i Python 3 için python3-pip paketi olarak kurarız:
sudo apt install python3-pip
Kurulum tamamlandıktan sonra, pip‘in doğru şekilde kurulduğunu ve çalıştığını doğrulamak için sürümünü kontrol edelim:
pip3 --version
Bu komutun çıktısı pip‘in sürüm numarasını ve Python 3 ile ilişkili olduğunu gösterecektir. pip‘i sistem genelinde güncel tutmak iyi bir alışkanlıktır, bu nedenle aşağıdaki komutla pip‘i en son sürümüne yükseltebilirsiniz:
pip3 install --upgrade pip
Bu adımlarla, JupyterLab’ın temel bağımlılığı olan Python 3 ve paket yöneticisi pip başarıyla kurulmuş ve güncellenmiş olacaktır.
Adım 3: Sanal Ortam Oluşturma ve Yönetimi (Şiddetle Tavsiye Edilir)
Sanal ortamlar, Python projeleri geliştirirken en iyi uygulamalardan biridir. Sanal ortamlar, her projenin kendi bağımlılık setine sahip olmasını sağlayarak, farklı projeler arasındaki bağımlılık çakışmalarını önler ve sistem genelindeki Python kurulumunu temiz tutar. Bu, özellikle farklı projelerde farklı kütüphane sürümlerine ihtiyaç duyulduğunda hayati önem taşır. Python 3.3 ve sonraki sürümlerle birlikte gelen venv modülü, sanal ortam oluşturmayı oldukça kolaylaştırır.
Öncelikle, sanal ortamlarımızı depolamak için bir dizin oluşturalım. Bu genellikle kullanıcının ana dizininde (~) veya projelerin bulunduğu bir dizinde yapılır:
mkdir ~/jupyterlab_envs
cd ~/jupyterlab_envs
Şimdi, bu dizin içinde JupyterLab için özel bir sanal ortam oluşturalım. Ortama jupyterlab_env adını verebiliriz:
python3 -m venv jupyterlab_env
Bu komut, jupyterlab_env adında yeni bir dizin oluşturur ve bu dizinin içine izole bir Python ortamı kopyalar. Bu ortamın kendine ait bir pip kopyası olacaktır.
Sanal ortamı kullanmaya başlamak için onu etkinleştirmemiz gerekir:
source jupyterlab_env/bin/activate
Ortam etkinleştirildiğinde, terminal istemcinizin başında parantez içinde sanal ortamın adını ((jupyterlab_env)) göreceksiniz. Bu, artık sanal ortamınızda olduğunuzu ve yükleyeceğiniz tüm Python paketlerinin bu ortama özgü olacağını gösterir. Etkinleştirilmiş bir sanal ortamda pip install ile yüklenen her şey, sistem genelindeki Python kurulumunuzu etkilemeyecektir.
Sanal ortamdan çıkmak istediğinizde ise şu komutu kullanmanız yeterlidir:
deactivate
deactivate komutunu çalıştırdıktan sonra terminal istemcinizdeki (jupyterlab_env) ibaresi kaybolacak ve tekrar sistem genelindeki Python ortamınıza dönmüş olacaksınız. Her JupyterLab kullanmak istediğinizde, sanal ortamı tekrar etkinleştirmeniz gerekecektir. Bu adım, JupyterLab’ın diğer Python projelerinizle veya sisteminizle çakışmadan izole bir şekilde çalışmasını sağlar ve uzun vadede size büyük kolaylık sunar.
Adım 4: JupyterLab Kurulumu
Sanal ortamımızı başarıyla oluşturup etkinleştirdikten sonra, artık JupyterLab’ı bu ortama kurmaya hazırız. Bu adım, pip paket yöneticisi kullanılarak oldukça basittir.
Öncelikle, sanal ortamınızın etkin olduğundan emin olun. Eğer değilseniz, önceki adımdaki gibi etkinleştirin:
cd ~/jupyterlab_envs
source jupyterlab_env/bin/activate
Terminal istemcinizde (jupyterlab_env) ibaresini gördüğünüzde, aşağıdaki komutu çalıştırarak JupyterLab’ı kurabilirsiniz:
pip install jupyterlab
Bu komut, pip‘e JupyterLab paketini ve onun tüm bağımlılıklarını PyPI (Python Package Index) deposundan indirip mevcut sanal ortama kurmasını söyler. Kurulum süresi internet bağlantınızın hızına ve sisteminizin performansına bağlı olarak birkaç dakika sürebilir. Kurulum sırasında birçok paketin indirildiğini ve yüklendiğini gösteren çıktılar göreceksiniz.
Kurulum tamamlandığında, Jupyter’ın genel olarak kurulduğunu ve JupyterLab bileşeninin de dahil olduğunu doğrulamak için aşağıdaki komutu kullanabilirsiniz:
jupyter --version
Bu komut, Jupyter’ın kurulu sürümünü ve ilişkili diğer bileşenlerin (örneğin jupyter_client, jupyter_core) versiyonlarını listeler. Bu çıktı, JupyterLab’ın başarıyla kurulduğunu teyit etmenize yardımcı olacaktır. Eğer bir hata alırsanız veya jupyter komutu bulunamazsa, sanal ortamınızın etkin olduğundan ve pip install jupyterlab komutunun hatasız tamamlandığından emin olun. Bu adımla birlikte, JupyterLab çekirdek kurulumu tamamlanmıştır ve artık onu çalıştırmaya hazırız.
Adım 5: JupyterLab’ı Çalıştırma
JupyterLab’ı sanal ortamımıza kurduktan sonra, onu başlatıp web tarayıcınız üzerinden erişmeye hazırsınız. Bu adım, JupyterLab’ın temel işlevselliğini test etmek ve ilk çalışma alanınızı oluşturmak için kritik öneme sahiptir.
Öncelikle, sanal ortamınızın etkin olduğundan emin olun. Eğer değilseniz, cd ~/jupyterlab_envs komutuyla sanal ortamlarınızın bulunduğu dizine gidin ve ardından source jupyterlab_env/bin/activate komutuyla sanal ortamı etkinleştirin.
Sanal ortam etkinleştirildikten sonra, JupyterLab’ı başlatmak için aşağıdaki komutu kullanın:
jupyter lab
Bu komutu çalıştırdığınızda, terminalde birkaç satır çıktı göreceksiniz. Bu çıktılar arasında, JupyterLab’ın hangi port üzerinde çalıştığı (varsayılan olarak 8888) ve web tarayıcınızdan erişmek için kullanmanız gereken URL’ler yer alacaktır. Örnek bir çıktı şöyle görünebilir:
[I 2023-10-27 10:30:00.123 LabApp] Serving notebooks from local directory: /home/youruser/jupyterlab_envs
[I 2023-10-27 10:30:00.123 LabApp] JupyterLab extension loaded from /home/youruser/jupyterlab_envs/jupyterlab_env/lib/python3.6/site-packages/jupyterlab
[I 2023-10-27 10:30:00.123 LabApp] JupyterLab application directory is /home/youruser/jupyterlab_envs/jupyterlab_env/share/jupyter/lab
[I 2023-10-27 10:30:00.123 LabApp] The Jupyter Notebook is running at:
[I 2023-10-27 10:30:00.123 LabApp] http://localhost:8888/?token=your_generated_token_here
[I 2023-10-27 10:30:00.123 LabApp] or http://127.0.0.1:8888/?token=your_generated_token_here
[I 2023-10-27 10:30:00.123 LabApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
JupyterLab, varsayılan olarak localhost (veya 127.0.0.1) üzerinde çalışır ve tarayıcınızın otomatik olarak açılmasını sağlamaya çalışır. Eğer tarayıcınız otomatik olarak açılmazsa, terminal çıktısında verilen URL’lerden birini (özellikle http://localhost:8888/?token=your_generated_token_here olanı) kopyalayıp web tarayıcınızın adres çubuğuna yapıştırın ve Enter tuşuna basın.
Tarayıcınızda JupyterLab arayüzünü görmelisiniz. İlk erişimde, sizden bir token veya parola isteyebilir. Terminal çıktısında verilen token= kısmındaki uzun karakter dizisini kopyalayıp ilgili alana yapıştırarak oturum açabilirsiniz. Bu token, her oturum için benzersizdir ve güvenlik amacıyla kullanılır.
JupyterLab arayüzüne başarıyla eriştiğinizde, sol tarafta bir dosya gezgini, üstte bir menü çubuğu ve ana çalışma alanında bir başlatıcı (launcher) göreceksiniz. Buradan yeni Python defterleri (Notebook), terminal pencereleri (Terminal), metin dosyaları (Text File) veya konsollar (Console) açabilirsiniz.
JupyterLab sunucusunu durdurmak için, terminal penceresine geri dönün ve Ctrl + C tuşlarına basın. Genellikle iki kez basmanız gerekebilir. Bu, sunucuyu kapatacak ve tüm çalışan kernelleri sonlandıracaktır. Bu adım, JupyterLab’ın temel işlevselliğini test etmenizi ve yerel olarak nasıl çalıştırılacağını anlamanızı sağlar.
Adım 6: JupyterLab’ı Uzaktan Erişime Açma ve Güvenlik Ayarları
JupyterLab’ı bir sunucuya kuruyorsanız, ona uzaktan erişebilmek ve bu erişimi güvenli hale getirmek kritik öneme sahiptir. Bu adım, özellikle çok kullanıcılı ortamlar veya bulut sunucuları için önemlidir.
6.1. JupyterLab Konfigürasyon Dosyası Oluşturma
Öncelikle, JupyterLab’ın konfigürasyon dosyasını oluşturmalıyız. Bu dosya, JupyterLab’ın nasıl davranacağını kontrol eden ayarları içerecektir. Sanal ortamınız etkinleştirilmişken aşağıdaki komutu çalıştırın:
jupyter lab --generate-config
Bu komut, genellikle ~/.jupyter/jupyter_lab_config.py yolunda bir konfigürasyon dosyası oluşturur.
6.2. Parola Belirleme
JupyterLab’ınıza uzaktan erişirken token yerine parola kullanmak daha pratik ve güvenlidir. Parola belirlemek için aşağıdaki komutu kullanın:
jupyter lab password
Bu komutu çalıştırdığınızda, sizden yeni bir parola girmenizi ve ardından tekrar onaylamanızı isteyecektir. Belirlediğiniz parola, daha sonra ~/.jupyter/jupyter_lab_config.py dosyasına hashlenmiş bir şekilde kaydedilecektir.
6.3. Konfigürasyon Dosyasını Düzenleme
Şimdi, oluşturduğumuz konfigürasyon dosyasını düzenleyerek uzaktan erişime izin verelim ve bazı güvenlik ayarları yapalım. Bir metin düzenleyici kullanarak dosyayı açın (örneğin nano):
nano ~/.jupyter/jupyter_lab_config.py
Dosya içinde aşağıdaki satırları bulun veya ekleyin. Satırların başındaki # işaretini kaldırarak yorum satırı olmaktan çıkarın:
# Tüm IP adreslerinden erişime izin ver (sunucu IP'si dahil)
c.ServerApp.ip = '0.0.0.0'
Tarayıcının otomatik olarak açılmasını engelle (sunucularda gereksiz)
c.ServerApp.open_browser = False
JupyterLab'ın çalışacağı portu belirle (varsayılan 8888)
c.ServerApp.port = 8888
Token kullanımını devre dışı bırak, parola ile giriş yapılmasını sağla
c.ServerApp.token = ''
Ctrl + X, Y ve Enter tuşlarına basarak dosyayı kaydedip kapatın.
6.4. Güvenlik Duvarı (UFW) Ayarları
Eğer sunucunuzda bir güvenlik duvarı (örneğin UFW – Uncomplicated Firewall) etkinse, JupyterLab’ın kullandığı portu (varsayılan 8888) açmanız gerekir.
sudo ufw allow 8888/tcp
sudo ufw enable # Eğer UFW etkin değilse bu komutla etkinleştirin
sudo ufw status # Güvenlik duvarı durumunu kontrol edin
Bu komutlar, 8888 numaralı TCP portundan gelen bağlantılara izin verir.
6.5. JupyterLab’ı Bir Servis Olarak Çalıştırma (systemd)
JupyterLab’ı her seferinde elle başlatmak yerine, onu bir systemd servisi olarak yapılandırarak arka planda sürekli çalışmasını ve sunucu yeniden başlatıldığında otomatik olarak başlamasını sağlayabiliriz.
Öncelikle, sanal ortamınızın tam yolunu öğrenin:
readlink -f $(which python)
Bu size /home/youruser/jupyterlab_envs/jupyterlab_env/bin/python gibi bir çıktı verecektir. Bu yolu not alın.
Şimdi bir systemd servis dosyası oluşturalım:
sudo nano /etc/systemd/system/jupyterlab.service
Dosyanın içine aşağıdaki içeriği yapıştırın. youruser yerine kendi kullanıcı adınızı, /home/youruser/jupyterlab_envs/jupyterlab_env/bin/python yerine az önce not aldığınız Python yolunu ve /home/youruser/jupyterlab_envs yerine JupyterLab’ın çalışmasını istediğiniz dizini (genellikle sanal ortamınızın üst dizini) yazın:
[Unit]
Description=JupyterLab
After=network.target
[Service]
User=youruser
Environment="PATH=/home/youruser/jupyterlab_envs/jupyterlab_env/bin"
ExecStart=/home/youruser/jupyterlab_envs/jupyterlab_env/bin/jupyter lab --config=/home/youruser/.jupyter/jupyter_lab_config.py
WorkingDirectory=/home/youruser/jupyterlab_envs
Restart=always
[Install]
WantedBy=multi-user.target
Dosyayı kaydedin ve kapatın. Şimdi systemd servislerini yeniden yükleyin, JupyterLab servisini başlatın ve otomatik başlamasını sağlayın:
sudo systemctl daemon-reload
sudo systemctl start jupyterlab
sudo systemctl enable jupyterlab
sudo systemctl status jupyterlab
systemctl status jupyterlab komutu, servisin başarıyla çalışıp çalışmadığını gösterecektir. Artık JupyterLab, sunucunuz yeniden başlatılsa bile otomatik olarak başlayacak ve arka planda çalışacaktır.
6.6. Uzaktan Erişim
Tüm bu ayarları yaptıktan sonra, web tarayıcınızdan sunucunuzun IP adresini ve belirlediğiniz portu kullanarak JupyterLab’a erişebilirsiniz:
http://your_server_ip:8888
Karşınıza çıkan giriş ekranında, jupyter lab password komutuyla belirlediğiniz parolayı girerek oturum açabilirsiniz.
Önemli Not: SSH Tünelleme ile Daha Güvenli Erişim (Opsiyonel)
Eğer JupyterLab’ı sadece belirli bir IP adresinden erişilebilir kılmak ve daha güvenli bir bağlantı kurmak isterseniz, SSH tünelleme kullanabilirsiniz. Bu yöntem, JupyterLab’ın sadece localhost üzerinde çalışmasına izin verirken, SSH bağlantısı üzerinden yerel makinenize güvenli bir şekilde port yönlendirme yapar.
Sunucu üzerinde c.ServerApp.ip = '127.0.0.1' olarak ayarlayın ve güvenlik duvarında 8888 portunu açmanıza gerek kalmaz. Ardından, yerel makinenizden aşağıdaki SSH komutunu çalıştırın:
ssh -N -f -L 8888:localhost:8888 user@your_server_ip
Bu komut:
* -N: Uzak komut çalıştırmaz.
* -f: SSH’ı arka planda çalıştırır.
* -L 8888:localhost:8888: Yerel makinenizin 8888 portunu, uzak sunucudaki localhost:8888‘e yönlendirir.
* user@your_server_ip: Sunucunuza bağlanmak için kullanıcı adınız ve IP adresiniz.
Bu tüneli kurduktan sonra, yerel tarayıcınızdan http://localhost:8888 adresine giderek sunucunuzdaki JupyterLab’a güvenli bir şekilde erişebilirsiniz.
Adım 7: Ek Python Kernelleri ve Uzantılar Kurulumu
JupyterLab’ın gücü, yalnızca varsayılan Python kernelini kullanmakla sınırlı değildir. Farklı Python versiyonlarını, diğer programlama dillerini (R, Julia vb.) ve JupyterLab’ın işlevselliğini artıran çeşitli uzantıları kurarak çalışma ortamınızı daha da zenginleştirebilirsiniz.
7.1. Farklı Python Kernelleri Kurulumu
Birden fazla Python projesiyle çalışıyorsanız, her bir projenin kendi bağımsız Python ortamına ve dolayısıyla kendi Jupyter kernel’ine sahip olması idealdir. Bu, bağımlılık çakışmalarını önler.
Öncelikle, yeni bir Python sanal ortamı oluşturun ve etkinleştirin (örneğin, my_other_env adında):
cd ~/jupyterlab_envs
python3 -m venv my_other_env
source my_other_env/bin/activate
Bu yeni sanal ortamda, Jupyter’ın bu ortamı bir kernel olarak tanıması için ipykernel paketini kurun:
pip install ipykernel
Şimdi, bu yeni Python ortamını Jupyter’a bir kernel olarak kaydedin:
python -m ipykernel install --user --name my_other_env --display-name "Python (My Other Env)"
* --user: Kernel’ı sadece mevcut kullanıcı için yükler.
* --name: Kernel için dahili bir ad belirler (genellikle sanal ortamın adıyla aynıdır).
* --display-name: JupyterLab arayüzünde görülecek adı belirler.
deactivate komutuyla bu sanal ortamdan çıkın ve ana JupyterLab ortamınızı başlatın (jupyter lab). JupyterLab arayüzünde “Launcher” sekmesinde veya “New” menüsünde “Python (My Other Env)” adında yeni bir kernel seçeneği göreceksiniz. Bu sayede, farklı sanal ortamlardaki Python versiyonlarını aynı JupyterLab arayüzünde kullanabilirsiniz.
7.2. Diğer Diller İçin Kerneller (Örnek: R, Julia)
Jupyter, sadece Python için değil, R ve Julia gibi diğer popüler bilimsel hesaplama dilleri için de kerneller sunar.
R Dili için IRkernel Kurulumu:
Öncelikle R’ı sisteminize kurmanız gerekir:
sudo apt install r-base
Ardından, R konsolunu açın:
R
R konsolu içinde, IRkernel paketini kurun ve Jupyter’a kaydedin:
install.packages('IRkernel')
IRkernel::installspec()
q() # R konsolundan çıkmak için
Şimdi JupyterLab’ı yeniden başlattığınızda, R kernelini de seçebileceksiniz.
Julia Dili için IJulia Kurulumu:
Öncelikle Julia’yı sisteminize kurmanız gerekir. Ubuntu için Julia’nın resmi web sitesinden indirip uygun bir yere (/opt gibi) çıkarabilir veya PPA kullanarak kurabilirsiniz. Örneğin:
sudo apt install julia
Ardından, Julia konsolunu açın:
julia
Julia konsolu içinde, IJulia paketini kurun:
using Pkg
Pkg.add("IJulia")
Bu komut, IJulia paketini kuracak ve otomatik olarak Jupyter’a bir kernel olarak kaydedecektir.
exit() # Julia konsolundan çıkmak için
7.3. JupyterLab Uzantıları Kurulumu
JupyterLab uzantıları, arayüze yeni özellikler ekleyerek veya mevcut işlevselliği geliştirerek kullanıcı deneyimini zenginleştirir. Uzantılar genellikle pip ile kurulur ve bazen jupyter lab build komutuyla yeniden derlenmesi gerekebilir.
Popüler uzantılara örnekler:
* jupyterlab-git: JupyterLab içinde Git sürüm kontrolünü sağlar.
* jupyterlab-toc: Defterler için İçindekiler tablosu oluşturur.
* jupyterlab-language-pack-tr-TR: JupyterLab arayüzünü Türkçe’ye çevirir.
Bir uzantı kurmak için, sanal ortamınız etkinleştirilmişken aşağıdaki komutu kullanın (örneğin jupyterlab-git için):
pip install jupyterlab-git
Bazı uzantılar, kurulumdan sonra JupyterLab uygulamasının yeniden derlenmesini gerektirebilir. Bu durumda aşağıdaki komutu çalıştırın:
jupyter lab build
Bu işlem biraz zaman alabilir. Kurulan uzantıları listelemek için:
jupyter labextension list
Bu adımlar, JupyterLab ortamınızı farklı programlama dilleri ve gelişmiş özelliklerle donatarak, daha kapsamlı ve verimli bir geliştirme ortamı oluşturmanıza olanak tanır.
Adım 8: Sık Karşılaşılan Sorunlar ve Çözümleri
JupyterLab kurulumu ve kullanımı sırasında bazı yaygın sorunlarla karşılaşabilirsiniz. İşte bu sorunlara yönelik olası çözümler:
8.1. Port Çakışması
Sorun: JupyterLab’ı başlatmaya çalıştığınızda “Port 8888 is already in use” (8888 portu zaten kullanımda) hatası alıyorsunuz.
Çözüm: Bu, başka bir uygulamanın (başka bir JupyterLab örneği veya farklı bir servis) varsayılan 8888 portunu kullandığı anlamına gelir. JupyterLab’ı farklı bir portta başlatabilirsiniz:
jupyter lab --port 8889
Bu komut JupyterLab’ı 8889 portunda başlatır. Başka bir port numarası da seçebilirsiniz. Uzaktan erişim için güvenlik duvarınızı da bu yeni port için ayarlamayı unutmayın.
8.2. Sanal Ortam Etkinleştirme Hatası
Sorun: pip install jupyterlab veya jupyter lab gibi komutlar çalışmıyor veya “command not found” (komut bulunamadı) hatası veriyor.
Çözüm: Bu genellikle sanal ortamınızın etkinleştirilmediği anlamına gelir. Sanal ortamı etkinleştirmek için:
cd ~/jupyterlab_envs # Sanal ortamların olduğu dizine gidin
source jupyterlab_env/bin/activate
Terminal istemcinizin başında (jupyterlab_env) ibaresini gördüğünüzden emin olun.
8.3. Erişim Reddedildi veya İzin Hatası
Sorun: Dosyaları kaydederken, bir kernel başlatırken veya belirli dizinlere erişmeye çalışırken “Permission denied” (Erişim reddedildi) hataları alıyorsunuz.
Çözüm:
* JupyterLab’ı çalıştırdığınız kullanıcının ilgili dizinlere yazma/okuma izinleri olduğundan emin olun.
* JupyterLab’ı sudo ile çalıştırmaktan kaçının, bu güvenlik riski oluşturur ve genellikle gerekli değildir. Eğer sudo ile kurduysanız, sahiplik sorunları yaşayabilirsiniz. chown komutuyla dosya sahipliğini düzeltin:
sudo chown -R youruser:youruser /home/youruser/jupyterlab_envs
sudo chown -R youruser:youruser ~/.jupyter
youruser yerine kendi kullanıcı adınızı yazın.
8.4. JupyterLab Başlamıyor veya Aniden Kapanıyor
Sorun: jupyter lab komutunu çalıştırdıktan sonra tarayıcı açılmıyor veya JupyterLab hemen kapanıyor.
Çözüm:
* Terminal çıktısını dikkatlice inceleyin. Hata mesajları genellikle sorunun kökenini gösterir.
* Eğer bir systemd servisi olarak çalıştırıyorsanız, logları kontrol edin:
sudo journalctl -u jupyterlab.service -f
Bu komut, servisin loglarını gerçek zamanlı olarak gösterir ve hata ayıklamada yardımcı olur.
* Bellek (RAM) veya CPU yetersizliği de JupyterLab’ın çökmesine neden olabilir, özellikle büyük defterler veya çok sayıda kernel çalıştırıldığında.
8.5. Tarayıcıdan Erişilemiyor (Uzaktan Erişim)
Sorun: Sunucunuzun IP adresi ve portu ile tarayıcıdan JupyterLab’a erişmeye çalıştığınızda bağlantı zaman aşımına uğruyor veya sayfa görüntülenemiyor.
Çözüm:
* Güvenlik Duvarı: sudo ufw status komutuyla güvenlik duvarınızın JupyterLab’ın kullandığı portu (varsayılan 8888) engellemediğinden emin olun. Gerekirse sudo ufw allow 8888/tcp komutuyla portu açın.
* IP Ayarı: ~/.jupyter/jupyter_lab_config.py dosyasındaki c.ServerApp.ip = '0.0.0.0' ayarının doğru yapıldığından emin olun. Eğer 127.0.0.1 olarak ayarlıysa, sadece sunucunun kendisinden erişilebilir demektir.
* Port Numarası: Tarayıcınızda doğru port numarasını kullandığınızdan emin olun.
* JupyterLab Çalışıyor mu?: systemctl status jupyterlab (eğer servis olarak çalışıyorsa) veya ps aux | grep jupyter komutlarıyla JupyterLab sürecinin gerçekten çalıştığını doğrulayın.
* Ağ Yapılandırması: Sunucunuzun ağ yapılandırması (örneğin, bulut sağlayıcınızın güvenlik grupları) gelen bağlantıları engelliyor olabilir. Bulut sağlayıcınızın kontrol panelinden gerekli portların açık olduğundan emin olun.
Bu sorun giderme adımları, JupyterLab kurulumu ve kullanımı sırasında karşılaşabileceğiniz çoğu yaygın sorunu çözmenize yardımcı olacaktır. Her zaman terminal çıktısını dikkatlice okumak ve hata mesajlarını anlamaya çalışmak, sorunun kaynağını bulmanın ilk adımıdır.
Sonuç
Bu kapsamlı rehberde, Ubuntu 18.04 işletim sistemi üzerinde JupyterLab ortamını adım adım nasıl kuracağınızı ve yapılandıracağınızı detaylı bir şekilde inceledik. Başlangıçta sistem güncellemelerinden Python 3 ve pip kurulumuna kadar temel hazırlık adımlarını tamamladık. Ardından, projeler arası bağımlılık çakışmalarını önlemek için sanal ortamların kritik önemini vurgulayarak bir sanal ortam oluşturduk ve JupyterLab’ı bu izole ortamda kurduk.
JupyterLab’ı yerel olarak çalıştırma ve web tarayıcınızdan erişim sağlama adımlarının yanı sıra, özellikle sunucu ortamları için hayati öneme sahip olan uzaktan erişim ve güvenlik ayarlarını da ele aldık. Parola belirleme, konfigürasyon dosyası düzenleme, güvenlik duvarı ayarları ve JupyterLab’ı systemd servisi olarak arka planda çalıştırma gibi gelişmiş konulara değindik. Ayrıca, farklı Python kernelleri, R ve Julia gibi diğer programlama dilleri için kernellerin nasıl kurulacağını ve JupyterLab uzantılarıyla ortamınızı nasıl genişletebileceğinizi gösterdik. Son olarak, kurulum ve kullanım sırasında sıkça karşılaşılan sorunlara yönelik pratik çözümler sunarak olası engelleri aşmanıza yardımcı olduk.
JupyterLab, veri bilimi, makine öğrenimi, bilimsel hesaplama ve interaktif geliştirme alanlarında çalışan profesyoneller için vazgeçilmez bir araçtır. Bu rehberdeki adımları takip ederek, kendi ihtiyaçlarınıza göre özelleştirilmiş, güvenli ve esnek bir JupyterLab ortamına sahip olacaksınız. Bu platformun sunduğu çok yönlülük ve güçlü özellikler sayesinde, veri analizi ve modelleme süreçlerinizi daha verimli ve keyifli hale getirebilirsiniz. Kurulumunuz tamamlandıktan sonra, JupyterLab’ın zengin özelliklerini keşfetmeye başlayabilir, yeni defterler oluşturabilir, verilerinizi analiz edebilir ve projelerinizi daha ileriye taşıyabilirsiniz. Unutmayın, pratik yapmak ve farklı uzantılarla denemeler yapmak, JupyterLab’ın tüm potansiyelini keşfetmenize yardımcı olacaktır.