Docker konteynıra USB Cihaz ekleme

Docker Konteynıra USB Cihaz Ekleme Rehberi

Portainer, Docker yönetimini kolaylaştıran güçlü bir araçtır. Karmaşık terminal komutları yerine, sadece birkaç tıklama ile ana makinedeki (host) bir USB donanımını (seri portlar, sensörler, modemler vb.) konteynır içine güvenle yansıtabilirsiniz.


1. Yeni Konteynır Oluştururken USB Ekleme

Eğer yeni bir konteynır kuruyorsanız, donanım eşlemesi Gelişmiş Ayarlar altından yapılır.

  1. Portainer paneline giriş yapın ve sol menüden Containers sekmesine tıklayın.
  2. + Add container butonuna basın.
  3. Sayfanın sonundaki Advanced container settings bölümünden Resources sekmesine tıklayın.
  4. Devices kısmında + add device butonuna basın.
  5. Kutucukları cihaz yoluna göre doldurun:
    • host: /dev/ttyUSB0 (Cihazın fiziksel yolu)
    • container: /dev/ttyUSB0 (Sanal ortamdaki yolu)

2. Docker Compose (Stack) Kullanarak USB Ekleme

Birden fazla servisi yönettiğiniz Stack yapılarında, cihazı YAML kodu içerisine ekleyerek tanımlayabilirsiniz:

version: '3.8'
services:
  app_name:
    image: your_image_here
    devices:
      - "/dev/ttyUSB0:/dev/ttyUSB0"
    restart: always

Deploy the stack butonuna basarak donanım eşlemesini tüm servislere uygulayabilirsiniz.


3. Çalışan Bir Konteynıra USB Eklemek

Docker mimarisi gereği, donanım değişiklikleri için konteynırın yeniden oluşturulması gerekir. Portainer bu süreci şu adımlarla kolaylaştırır:

  1. Containers listesinden ilgili konteynırı seçin.
  2. Üstteki Duplicate/Edit butonuna tıklayın.
  3. Aşağıdaki Resources sekmesine gidip + add device işlemini yapın.
  4. Deploy the container butonuna basın ve mevcut konteynırın değiştirilmesini onaylayın.

4. Gelişmiş Seçenek: Privileged Modu

USB cihazınız sık sık takılıp çıkarılıyorsa veya tam donanım yetkisi gerekiyorsa, Privileged Mode en kesin çözümdür:

  • Konteynır ayarlarındaki Runtime & Capabilities sekmesine gidin.
  • Privileged mode seçeneğini On konumuna getirin.
Önemli Hatırlatma:

USB cihazını ekledikten sonra, uygulamanızın (Node-RED, Python vb.) porta erişim izni olduğundan emin olun. Privileged mod genellikle bu izin sorunlarını kökten çözer ancak güvenlik nedeniyle sadece gerekli durumlarda kullanılmalıdır.

Hubbox Connect X2 donanım uyumluluğu ve endüstriyel IoT çözümleri için: www.hubbox.io