Build Docker لـ Gnuradio مع ملحقات إضافية
يهدف العرف إلى:
- للسماح باستقرار مستقر لوقت تشغيل Gnuradio.
- للسماح للمستخدمين بطريقة سهلة لبناء وحدات Gnuradio OTT دون العبث بنظامهم اليومي.
- للسماح لمطوري الوحدة النمطية OTT بتقديم البيئة البسيطة عند النقل من الإصدار السابق من Gnuradio.
يستخدم
- يستخدم Ubuntu 24.04 كقاعدة.
- Gnuradio 3.10 (من Ubuntu Repo)
تم اختبار SDR HW
- hackrf واحد.
يجب أن تعمل مع جميع برامج تشغيل OSMOCOM الممكّنة في حزمة Ubuntu 24.04.
تم تجميع وحدات Gnuradio حاليًا
- gr-lora_sdr (https://github.com/tapparelj/gr-lora_sdr)
- gr-satellites (https://github.com/daniestevez/gr-satellites)
- Gr-Adapt (https://github.com/karel/gr-adapt)
- Gr-inspector (https://github.com/radioconda/gr-inspector)
- gr-difi (https://github.com/difi-consortium/gr-difi.git)
- gr-satnogs (https://gitlab.com/librespacefoundation/satnogs/gr-satnogs/-/tree/gnuradio-3.10؟ref_type=heads)
- GR-IEEE802-15-4 (https://github.com/bastibl/gr-ieee802-15-4.git)
- gr-iridium (https://github.com/muccc/gr-iridium.git)
(لا تتردد في إرسال العلاقات العامة لأي إضافات)
وحدات OTT مدرجة من Ubuntu repo
- GR-Air-Modes
- Gr-fosphor
- gr-funcube
- GR-GSM
- GR-HPSDR
- Gr-iqbal
- Gr-Limesdr
- Gr-Osmosdr
- Gr-Radar
- GR-RDS
Dockerfiles
- Dockerfile-ubuntu-base-قاعدة ومتطلبات Ubuntu
- DOCKERFILE-SDR-APPS-حزم SDR ذات الصلة من Ubuntu-Repo.
- Dockerfile-Custom-Builds-تصميمات المصدر من مكونات Gnuradio.
لبناء صورة Docker
$ ./docker_build.sh
لتشغيل الصورة
$ ./docker_run.sh
تعيين مسار الوحدة النمطية
قبل البدء في Gnuradio-Companion ، يجب تعيين مسار الوحدة النمطية يدويًا في الوقت الحالي.
$ Export Pythonpath =/usr/lib/python3.12/dist-packages: /usr/lib/python3.12/site-packages: $ pythonpath
مجلد مشترك.
- قم بإنشاء /الصفحة الرئيسية /gnuradio على مضيفك واحصل على هذا التخزين المشترك بين الحاوية والمضيف. يسمح بحفظ إعدادات Gnuradio وما إلى ذلك بين البناء/الجلسات.
- As /Home /Gnuradio يتم إعداده لمشاركته ، سيجعل الحياة أسهل إذا قمت بتحديث "Builds Dockerfile-Custom Builds" وتعيين UID على نفس UID مثل المستخدم العادي.
تودو
- الإجراءات github لبناء صور docker.
- أمثلة Gnuradio
- نوع من الإعداد لتكون قادرة على تشغيل أشياء يمكن الوصول إليها الشبكة مثل https://github.com/gnuradio/gr-bokehgui
- تقسيم ما يجب تضمينه في صورة Docker وجعل كل وحدة رمز المصدر تثبيت تبعيات خاصة بها.