Edge-home-orchestration-go: Tanggapan kesalahan dari daemon: tidak bisa mendapatkan log dari wadah yang mati atau ditandai untuk dihapus

Dibuat pada 13 Jun 2020  ·  13Komentar  ·  Sumber: lf-edge/edge-home-orchestration-go

Gambar Docker berjalan dengan baik di sistem saya tetapi ketika menjalankannya di orkestrasi tepi, itu menunjukkan kepada saya kesalahannya:
Screenshot from 2020-06-13 10-40-25
Berjalan sempurna di sistem saya:
Screenshot from 2020-06-13 10-42-01

Berikut adalah perintah yang saya jalankan:
curl -X POST "192.168.43.11:56001/api/v1/orchestration/services" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"ServiceName\": \ "age_detection\", \"ServiceInfo\": [{ \"ExecutionType\": \"container\", \"ExecCmd\": [ \"docker\", \"run\", \"-it\" ,\"--rm\",\"--device=/dev/video0\",\"-e\",\"DISPLAY=$DISPLAY \",\"-v\",\"$XSOCK: $XSOCK\",\"-v\",\"$XAUTH:$XAUTH\",\"-e\",\"XAUTHORITY=$XAUTH\",\"-e\",\" QT_X11_NO_MITSHM=1 \",\"animeshj123/age_det_ image:02\ "]}], \"StatusCallbackURI\": \" http://192.168.43.11 :8888/api/v1/services/notification\"}"

bug question

Komentar yang paling membantu

Ini bekerja pada baobab. Terima kasih.

Semua 13 komentar

@Deepak-Enc Saya berhasil mereproduksi kasus Anda dengan kesalahan dan juga berhasil meluncurkan wadah menggunakan edge-orchestration.
Di bawah ini adalah perintah yang saya lakukan untuk meluncurkan dengan sukses

virtual-pc@virtualpc-VirtualBox:~$ curl -X POST "127.0.0.1:56001/api/v1/orchestration/services" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"ServiceName\": \"age_detection\", \"ServiceInfo\": [{ \"ExecutionType\": \"container\", \"ExecCmd\": [ \"docker\", \"run\", \"-it\",\"--rm\",\"--device=/dev/video0\", \"--net=host\",\"--ipc=host\", \"-e\",\"DISPLAY=$DISPLAY\",\"-v\",\"/tmp/.X11-unix:/tmp/.X11-unix\",\"-e\",\"QT_X11_NO_MITSHM=1\",\"animeshj123/age_det_image:02\"]}], \"StatusCallbackURI\": \"http://127.0.0.1:8888/api/v1/services/notification\"}"
{"Message":"ERROR_NONE","RemoteTargetInfo":{"ExecutionType":"container","Target":"10.0.2.15"},"ServiceName":"age_detection"}
  1. Pengaturan server X saya sedikit berbeda, tetapi Anda dapat menggunakan milik Anda sendiri jika cocok untuk Anda. Hal utama yang harus diperhatikan adalah tanda kutip. Dalam contoh Anda, mereka tidak benar (saya pikir ini salah ketik).
  2. Kesalahan yang Anda temui adalah konsekuensi menjalankan penampung dua kali. Program yang bekerja di dalam memberikan error, karena tidak dapat mengakses webcam.

    Sebelum memulai, pastikan wadah seperti itu tidak dimulai sebelum menggunakan perintah
virtual-pc@virtualpc-VirtualBox:~$ docker ps -a
CONTAINER ID        IMAGE                          COMMAND                  CREATED             STATUS              PORTS               NAMES
0d73793665d9        animeshj123/age_det_image:02   "python detect_age_c…"   16 minutes ago      Up 16 minutes                           crazy_visvesvaraya
f1a1dacb70fd        edge-orchestration:baobab      "sh run.sh"              16 minutes ago      Up 16 minutes                           edge-orchestration
virtual-pc@virtualpc-VirtualBox:~$ 

Hentikan container yang sedang berjalan, dan setelah itu Anda dapat mulai menggunakan edge-orchestration

Tolong beri umpan balik apa hasil Anda? Saya harap semuanya berhasil untuk Anda. Jika Anda memiliki pertanyaan, kami akan dengan senang hati menjawabnya!

Menerima kesalahan yang sama.
Screenshot from 2020-06-15 15-09-29

Screenshot from 2020-06-15 15-10-09

Screenshot from 2020-06-15 15-10-37

Anda perlu memastikan bahwa program dalam wadah animeshj123/age_det_image:02 dimulai dengan benar, karena baris container execution status : 1 menunjukkan bahwa telah terjadi kesalahan dalam program itu sendiri.
изображение

Saya sarankan melakukannya. Setelah itu, saya melihat bahwa semuanya berfungsi dengan benar:

virtual-pc@virtualpc-VirtualBox:~$ sudo docker run --rm -ti --device=/dev/video0 --net=host --ipc=host -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --env="QT_X11_NO_MITSHM=1" animeshj123/age_det_image:02
[sudo] password for virtual-pc: 
[INFO] loading face detector model...
[INFO] loading age detector model...
[INFO] starting video stream...
^CTraceback (most recent call last):
  File "detect_age_cam.py", line 121, in <module>
    results = detect_and_predict_age(frame, faceNet, ageNet,
  File "detect_age_cam.py", line 29, in detect_and_predict_age
    detections = faceNet.forward()
KeyboardInterrupt
virtual-pc@virtualpc-VirtualBox:~$ docker ps -a
CONTAINER ID        IMAGE                       COMMAND             CREATED             STATUS              PORTS               NAMES
f1a1dacb70fd        edge-orchestration:baobab   "sh run.sh"         17 hours ago        Up 17 hours                             edge-orchestration
virtual-pc@virtualpc-VirtualBox:~$ curl -X POST "127.0.0.1:56001/api/v1/orchestration/services" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"ServiceName\": \"age_detection\", \"ServiceInfo\": [{ \"ExecutionType\": \"container\", \"ExecCmd\": [ \"docker\", \"run\", \"-it\",\"--rm\",\"--device=/dev/video0\", \"--net=host\",\"--ipc=host\", \"-e\",\"DISPLAY=$DISPLAY\",\"-v\",\"/tmp/.X11-unix:/tmp/.X11-unix\",\"-e\",\"QT_X11_NO_MITSHM=1\",\"animeshj123/age_det_image:02\"]}], \"StatusCallbackURI\": \"http://127.0.0.1:8888/api/v1/services/notification\"}"
{"Message":"ERROR_NONE","RemoteTargetInfo":{"ExecutionType":"container","Target":"10.0.2.15"},"ServiceName":"age_detection"}virtual-pc@virtualpc-VirtualBox:~$ 
virtual-pc@virtualpc-VirtualBox:~$ 

Saya juga melihat kesalahan seperti itu.
изображение
itu bisa diperbaiki jika restart docker (service docker restart)

Wadah yang sama berjalan dengan baik di tepi Anda dan juga di localhost saya itu
berarti program tidak memiliki masalah. mungkin ada masalah di my
edge-orchestration bagaimana memecahkan masalah ini.

Pada Senin, 15 Juni 2020, 16:25 tdrozdovsky, [email protected] menulis:

Anda perlu memastikan bahwa program di animeshj123/age_det_ image:02
container dimulai dengan benar, karena status eksekusi container : 1 baris
menunjukkan bahwa telah terjadi kesalahan pada program itu sendiri.
[gambar: ображение]
https://user-images.githubusercontent.com/45031429/84649763-bd171c00-af0f-11ea-9ff6-7ba80aea6662.png

Saya sarankan melakukannya. Setelah itu, saya melihat bahwa semuanya berfungsi dengan benar:

virtual-pc@virtualpc-VirtualBox :~$ sudo docker run --rm -ti --device=/dev/video0 --net=host --ipc=host -e DISPLAY=$DISPLAY -v /tmp/.X11- unix:/tmp/.X11-unix --env="QT_X11_NO_MITSHM=1" animeshj123/age_det_ gambar:02

[Sudo] kata sandi untuk virtual-pc:

[INFO] memuat model pendeteksi wajah...

[INFO] memuat model pendeteksi usia...

[INFO] memulai streaming video...

^CTraceback (panggilan terakhir terakhir):

File "detect_age_cam.py", baris 121, di

results = detect_and_predict_age(frame, faceNet, ageNet,

File "detect_age_cam.py", baris 29, di detect_and_predict_age

detections = faceNet.forward()

KeyboardInterupsi

virtual-pc@virtualpc-VirtualBox :~$ docker ps -a

CONTAINER ID IMAGE COMMAND NAMA PORT STATUS DIBUAT

f1a1dacb70fd edge-orch estration:baobab "sh run.sh" 17 jam yang lalu Up 17 hours edge-orchestration

virtual-pc@virtualpc-VirtualBox :~$ curl -X POST "127.0.0.1:56001/api/v1/orchestration/services" -H "accept: application/json" -H "Content-Type: application/json" - d "{ \"ServiceName\": \"age_detection\", \"ServiceInfo\": [{ \"ExecutionType\": \"container\", \"ExecCmd\": [ \"docker\", \" run\", \"-it\",\"--rm\",\"--device=/dev/video0\", \"--net=host\",\"--ipc=host\ ", \"-e\",\"DISPLAY=$DISPLAY\",\"-v\",\"/tmp/.X11-unix:/tmp/.X11-unix\",\"-e\ ",\"QT_X11_NO_MITSHM=1\",\"animeshj123/age_det_ image:02\ "]}], \"StatusCallbackURI\": \" http://127.0.0.1 :8888/api/v1/services/notification\ "}"

{"Message":"ERROR_NONE","RemoteTargetInfo":{"ExecutionType":"container","Target":"10.0.2.15"},"ServiceName":"age_detection"} virtual-pc@virtualpc-VirtualBox :~ $

virtual-pc@virtualpc-VirtualBox :~$

Saya juga melihat kesalahan seperti itu.
[gambar: ображение]
https://user-images.githubusercontent.com/45031429/84649385-1d598e00-af0f-11ea-9b6a-43a7780c7cf5.png
itu bisa diperbaiki jika restart docker (service docker restart)


Anda menerima ini karena Anda disebutkan.
Balas email ini secara langsung, lihat di GitHub
https://github.com/lf-edge/edge-home-orchestration-go/issues/91#issuecomment-644056795 ,
atau berhenti berlangganan
https://github.com/notifications/unsubscribe-auth/ANR2JO4EKLU3UYAYP4OSZB3RWX4ZPANCNFSM4N42UCTA
.

Di bawah ini adalah contoh bagaimana itu mungkin tidak berfungsi dengan benar

virtual-pc@virtualpc-VirtualBox:~$ docker run --rm -ti --device=/dev/video0 --net=host --ipc=host -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --env="QT_X11_NO_MITSHM=1" animeshj123/age_det_image:02
[sudo] password for virtual-pc: 
[INFO] loading face detector model...
[INFO] loading age detector model...
[INFO] starting video stream...
[ WARN:0] global /io/opencv/modules/videoio/src/cap_v4l.cpp (887) open VIDEOIO(V4L2:/dev/video0): can't open camera by index
Traceback (most recent call last):
  File "detect_age_cam.py", line 117, in <module>
    frame = imutils.resize(frame, width=400)
  File "/usr/local/lib/python3.8/site-packages/imutils/convenience.py", line 69, in resize
    (h, w) = image.shape[:2]
AttributeError: 'NoneType' object has no attribute 'shape'

sekarang lihat kode kesalahannya

virtual-pc@virtualpc-VirtualBox:~$ echo $?
1

kesalahannya sama dengan pengembalian edge-orchestrator

Saya pikir perlu untuk mencari alasan mengapa program tidak bekerja dengan benar (misalnya, tidak ada akses ke /dev/video0 atau lainnya)

Tolong hilangkan keraguan saya. Ini berfungsi dengan baik di mesin Host saya yang berarti tidak ada masalah dalam wadah buruh pelabuhan atau file buruh pelabuhan. Mungkin ada masalah dengan edge-orchestration karena saya tidak dapat mendeteksi di file container atau docker.

@Deepak-Enc Tolong jelaskan lebih detail tentang apa itu "masalah dengan edge-orchestration". Dari pemahaman saya, wadah penargetan Anda berhasil berjalan di Host lokal Anda melalui wadah buruh pelabuhan/file buruh pelabuhan, tetapi gagal ketika Anda mencoba menjalankannya di edge-orchestration. Kami telah memandu Anda beberapa rekomendasi tetapi masih belum jelas untuk mengatasi masalah ini. Apakah kita benar?
@suresh-lc Apa pendapat Anda? Tampaknya bukan hanya masalah konfigurasi.

2020/06/16 04:27:56 containerexecutor.go:84: [containerexecutor] buat wadah: c22c72a303
2020/06/16 04:28:01 containerexecutor.go:102: [containerexecutor] status eksekusi container : 1
16/06/2020 04:28:01 containerexecutor.go:111: [containerexecutor] Respons kesalahan dari daemon: tidak bisa mendapatkan log dari wadah yang mati atau ditandai untuk dihapus
16/06/2020 04:28:01 orchestration_api.go:340: Status layanan [orchestrationapi] diubah [namaaplikasi:age_detection][status:]
16/06/2020 04:28:01 containerexecutor.go:122: [containerexecutor] Tanggapan kesalahan dari daemon: penghapusan wadah c22c72a303bff50d18b4af5d5b7d644256cdd8fb2c7d2b08ccfa2ea225b3aa7f sudah dalam proses

Saya menerima kesalahan ini saat menjalankan wadah deteksi usia (waktu nyata dan Video) pada orkestrasi tepi. Ini menangkap bingkai pertama aplikasi tetapi kemudian secara otomatis wadah ditandai sebagai wadah mati.

@Deepak-Enc : Kita bisa melihat dari log wadah ditandai untuk dihapus setelah membaca frame pertama karena beberapa kesalahan. Tapi persis mengapa kami juga mencoba untuk menemukan. Bisakah Anda membagikan file log kesalahan lengkap. Dan juga jika Anda dapat membagikan video langkah-langkah yang Anda lakukan, itu akan sangat membantu.

Di bawah ini adalah video tentang bagaimana sebuah container bekerja di bawah edge-orchestration

Ubuntu_v16_04 [Berjalan] - Oracle VM VirtualBox 6_16_2020 9_30_15 AM.zip

Log yang Anda kirim menunjukkan bahwa aplikasi dalam wadah tidak selesai dengan benar. Lebih banyak data yang dibutuhkan

@Deepak-Enc : Bisakah Anda mengambil cabang Baobab dan mencoba skenarionya.
Tampaknya daftar putih wadah tidak dilakukan untuk layanan mulai dari orkestrasi tepi.
err := verifier.GetInstance().ContainerIsInWhiteList(s.ParamStr[paramLen-1]).

Oleh karena itu, Anda dapat mencobanya sekali dengan cabang Baobab dan beri tahu kami hasilnya.

Ini bekerja pada baobab. Terima kasih.

Masalah terselesaikan. @suresh-lc @tdrozdovsky @Deepak-Enc Terima kasih atas semua minat dan semangat Anda!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat