Docker'ı SD kartı veri kökü olarak kullanacak şekilde yapılandır (örneğin PLCVisu ile WP400)
Bu rehber, Docker'ın deposunun SD karta nasıl yönlendirileceğini** açıklar; bu, sınırlı dahili belleğe sahip cihazlar için ideal (örneğin WAGO WP400) için idealdir. Hazırlık, sürekli montaj ve yapılandırılmış sorun giderme içerir.
Yazılım Gereksinimleri
-
Docker
WAGO Docker Kurulum Rehberi (WP400 Docker IPK araması) -
PLCVisu Software (.ipk)
WAGO PLCVisu İndirme Sayfası -
Kök Erişim
SSH (ssh root@<wp400-ip>) veya seri terminal üzerinden
Donanım Gereksinimleri
- SD Kart veya USB Adaptörlü SSD
- Minimum Sınıf 10 veya UHS-I
- En az 8 GB (16+ GB önerilir)
ext4veyavfatolarak biçimlendirilmiştir (Linux uyumlu)
Ön Koşullar
Mount SD Kart ve Docker Depolamayı Hazırla
1. SD kart cihazını tanımlayın
Koşu:
lsblk
ya da:
dmesg | grep sd
/dev/mmcblk0p1 veya /dev/sda1 gibi bir aygıt arayın.
### 2. Format the SD Card (if needed – this erases all data)
mkfs.ext4 /dev/sda1
Cihaz adını sisteminizle uyumlu şekilde ayarlayın
ext4desteklenmiyorsamkfs.vfatkullanabilirsiniz
### 3. Create Mount Point and Mount the SD Card
mkdir -p /mnt/sdcard
mount /dev/sda1 /mnt/sdcard
Doğrulayın: https://doc.plcvisu.cloud/tr/downloads.html
df -h
4. Docker Veri Dizini'ni Hazırlayın
mkdir -p /mnt/sdcard/docker
chmod 711 /mnt/sdcard/docker
5. Yapılandırmayı Değiştirmeden Önce Docker'ı Durdurun
/etc/init.d/docker stop
6. Mevcut Docker Verilerini Yedekle (Isteğe Bağlı)
mv /var/lib/docker /var/lib/docker.backup
7. Docker'ı SD kartı veri kökü olarak kullanacak şekilde yapılandırın
Düzenle veya oluştur:
vi /etc/docker/daemon.json
Ek:
{
"data-root": "/mnt/sdcard/docker"
}
Kaydet ve kapat.
8. Docker'ı Tekrar Başlat
/etc/init.d/docker start
9. Docker Depolama Yolunu Doğrulayın
docker info | grep "Docker Root Dir"
Beklenen sonuç:
Docker Root Dir: /mnt/sdcard/docker
İsteğe bağlı: Yeniden başlatmadan sonra montajı kalıcı hale getir
Düzenle /etc/fstab:
/dev/sda1 /mnt/sdcard ext4 defaults 0 2
⚠️ SD kartın her zaman açılışta hazır olduğundan emin olun
Test etmek içinmount -akullanın
Yeniden Başlatma Sonrası Kontrol
Yeniden başlatmadan sonra:
df -h | grep /mnt/sdcard
docker info | grep "Docker Root Dir"
/var/lib/docker olarak geri dönüş yaparsanız → fstab ve Docker açılış zamanlamasını kontrol edin
Sorun Giderme Rehberi
| Belirti | Neden | Çözüm |
|---|---|---|
Docker Root Dir hâlâ /var/lib/docker olarak kalmıştır |
SD kart yeterince erken takılmadı | Docker başlatmayı geciktirin veya mount --bind kullanın |
mount: wrong fs type |
Yanlış dosya sistemi formatı | mkfs.ext4 ile yeniden formatlama |
Cihazda yer kalmadı |
SD kart çok küçük / yanlış montaj | df -h ile kontrol et, SD boyutunu değiştir veya sağa monte et |
/mnt/sdcard/docker üzerinde izin reddedildi |
Yanlış izinler | Koş chmod 711 /mnt/sdcard/docker |
| Docker çalışmaz | Yapılandırma hatası veya eksik klasör | /etc/docker/daemon.json ve kayıtları kontrol edin |
Son Notlar
Docker'ı yapılandırmasını değiştirmeden önce her zaman durdurun
Docker çalışırken SD kartı çıkarmayın
Kritik uygulamalar için: endüstriyel seviye SD veya harici SSD kullanın
/var/lib/docker.backupdosyasını geri getirerek vedaemon.jsondüzenleyerek temiz bir şekilde geri dönebilirsiniz
⚠️ SD kartın açılış sırasında Docker başlamadan takıldığından emin olun.
Montaj çok geç olursa, Docker/var/lib/dockerolarak yeniden başlatılır.
Node-RED Docker Görgesini WP400'de Yükle ve Çalıştır
Bu yöntem, önceden indirilmiş bir .tar Docker görüntü dosyası kullanarak bir WP400 üzerinde internet erişimi olmadan Node-RED'i dağıtmanıza olanak tanır.
1. Docker Image .tar dosyasını indir (bağlantıdan)
Docker Hub'dan çekme yapmak yerine, hazırlanmış görüntü dosyasını indirin:
Dosyayı geliştirme bilgisayarınızda yerel olarak kaydedin.
2. Docker Image dosyasını WP400 SD kartına (monte edilmiş dizin) aktarın
Docker görüntüsünü geçici belleğe (/tmp) aktarmak yerine, onu WP400'e monte edilen SD karta **doğrudan yerleştirebilirsiniz. Bu özellikle görüntü büyükse ve dahili depoyu tüketmekten kaçınmak istiyorsanız faydalıdır.
Windows
Seçenek A – WinSCP (GUI):
- WinSCP'i yükleyin.
- SCP kullanarak WP400'e bağlanın (
root@<wp400-ip>). - Genellikle
/mnt/sdcardolan, takılı SD kart dizinine gidin. node-red-arm327l.tardosyasını/mnt/sdcarddizinine sürükleyip bırakın.
Seçenek B – PuTTY (pscp) ile Komut Satırı:
pscp C:pathtonode-red-arm327l.tar root@<wp400-ip>:/mnt/sdcard
macOS
Terminali Kullanın:
scp ~/Downloads/node-red-arm327l.tar root@<wp400-ip>:/mnt/sdcard
Linux
Herhangi bir terminali kullanın:
scp /path/to/node-red-arm327l.tar root@<wp400-ip>:/mnt/sdcard
USB Stick (Tüm işletim sistemleri için alternatif)
Ağ üzerinden aktarım mümkün değilse:
- Dosyayı bir USB belleğe kopyalayın.
- USB'yi WP400'e takın.
- WP400'de SD karta taşın:
mount /dev/sda1 /mnt/usb cp /mnt/usb/node-red-arm327l.tar /mnt/sdcard umount /mnt/usb
Dosya /mnt/sdcard altına kaydedildikten sonra, 3. Adıma geçin: SD Karttan Docker Görüntüsünü Yükleme
Dosya /tmp altında kullanılabilir hale geldikten sonra, 3. Adıma geçin: WP400'e Docker Görüntüsünü Yükleme
3. WP400'de Docker Image'i Yükleyin
WP400'e SSH ile gir ve çalıştır:
docker load -i /tmp/node-red-arm327l.tar
Bu, görüntüyü yerel Docker kayıt defterinize yükleyecektir.
4. Node-RED Konteynerini çalıştırın
docker run -it -d -p 1880:1880 -v node_red_data:/data --name wago-nodered --restart unless-stopped node-red-arm327l:latest
✔ Resim adının (
node-red-arm327l:latest)docker imagesile eşleştiğinden emin olun.
???? SD kartı kalıcı veri için kullanmak için,node_red_datayerine/mnt/sdcard/noderedgibi tam bir yol verin.
Node-RED'e erişin
Tarayıcınızda açın:
http://<wp400-ip>:1880
Artık WP400 üzerinde doğrudan internet erişimi gerektirmeyen tam işlevsel bir Node-RED örneğiniz var.