รันคำสั่งนี้เพื่อล้างสมอง Laravel
Bash
./vendor/bin/sail artisan route:clear
./vendor/bin/sail artisan view:clear
Laravel Sail -> stop and start
คำสั่งจัดการคิวต่าง
docker exec -it netflix-clone-api-laravel.test-1 php artisan queue:flush
เช็ค logs worker
tail -n 50 storage/logs/laravel.log
docker compose logs -f laravel.worker
ดูคิวงาน
./vendor/bin/sail artisan queue:work
ส่ง file เข้าคิวแปลงเป็น HLS
docker compose exec laravel.worker php artisan bulk:encode demonslayer1
restart คิว
./vendor/bin/sail artisan queue:restart
คำสั่ง activate TV paring
curl -X POST https://master.myflix.shop/api/tv/approve -H "Accept: application/json" -d "tv_code=7114" -d "user_id=1"
เช็ค ffmpeg ทำงานไหม
ps aux | grep ffmpeg
หลังจากแปลง hls แล้ว โครงสร้าง file จะเป็นแบบนี้
ls /share/upload_movies/worker_hls/267 a0_000.ts a0_021.ts a0_042.ts a1_002.ts a1_023.ts a1_044.ts poster_3.jpg v_020.ts v_041.ts a0_001.ts a0_022.ts a0_043.ts a1_003.ts a1_024.ts a1_045.ts v_000.ts v_021.ts v_042.ts a0_002.ts a0_023.ts a0_044.ts a1_004.ts a1_025.ts a1_046.ts v_001.ts v_022.ts v_043.ts a0_003.ts a0_024.ts a0_045.ts a1_005.ts a1_026.ts a1_047.ts v_002.ts v_023.ts v_044.ts a0_004.ts a0_025.ts a0_046.ts a1_006.ts a1_027.ts a1_048.ts v_003.ts v_024.ts v_045.ts a0_005.ts a0_026.ts a0_047.ts a1_007.ts a1_028.ts a1_049.ts v_004.ts v_025.ts v_046.ts a0_006.ts a0_027.ts a0_048.ts a1_008.ts a1_029.ts a1_050.ts v_005.ts v_026.ts v_047.ts a0_007.ts a0_028.ts a0_049.ts a1_009.ts a1_030.ts a1_051.ts v_006.ts v_027.ts v_048.ts a0_008.ts a0_029.ts a0_050.ts a1_010.ts a1_031.ts a1_052.ts v_007.ts v_028.ts v_049.ts a0_009.ts a0_030.ts a0_051.ts a1_011.ts a1_032.ts a1_053.ts v_008.ts v_029.ts v_050.ts a0_010.ts a0_031.ts a0_052.ts a1_012.ts a1_033.ts a1_054.ts v_009.ts v_030.ts v_051.ts a0_011.ts a0_032.ts a0_053.ts a1_013.ts a1_034.ts a1_055.ts v_010.ts v_031.ts v_052.ts a0_012.ts a0_033.ts a0_054.ts a1_014.ts a1_035.ts a1_056.ts v_011.ts v_032.ts v_053.ts a0_013.ts a0_034.ts a0_055.ts a1_015.ts a1_036.ts a1_057.ts v_012.ts v_033.ts v_054.ts a0_014.ts a0_035.ts a0_056.ts a1_016.ts a1_037.ts a1_058.ts v_013.ts v_034.ts v_055.ts a0_015.ts a0_036.ts a0_057.ts a1_017.ts a1_038.ts a1_059.ts v_014.ts v_035.ts v_056.ts a0_016.ts a0_037.ts a0_058.ts a1_018.ts a1_039.ts a1.m3u8 v_015.ts v_036.ts v_057.ts a0_017.ts a0_038.ts a0_059.ts a1_019.ts a1_040.ts v_016.ts v_037.ts v_058.ts a0_018.ts a0_039.ts a0.m3u8 a1_020.ts a1_041.ts v_017.ts v_038.ts v_059.ts a0_019.ts a0_040.ts a1_000.ts a1_021.ts a1_042.ts poster_1.jpg v_018.ts v_039.ts v.m3u8 a0_020.ts a0_041.ts a1_001.ts a1_022.ts a1_043.ts poster_2.jpg v_019.ts v_040.ts
