นำเข้าคีย์จากไฟล์
ตั้งค่า
กรอกไฟล์เดียวด้วยแหล่งค้นหา ตัวดาวน์โหลด มีเดียเซิร์ฟเวอร์ เว็บคำบรรยาย และอีเมลของคุณ แล้วนำเข้า ไม่ต้องพิมพ์ทีละคีย์ใน Settings
ก่อนเริ่ม
ลิงก์ไปยัง ก่อนเริ่ม- HolyArrs รันใน Docker โดยมีโฟลเดอร์คอนฟิกที่
/config - คุณสร้าง API key ของเจ้าของได้ใน Settings > API > API keys (การตั้งค่า > API > API keys)
นำเข้าไฟล์
ลิงก์ไปยัง นำเข้าไฟล์-
คัดลอก holyarrs-secrets.template.yaml เป็น
holyarrs-secrets.yaml -
กรอกสิ่งที่คุณใช้ ที่เหลือปล่อยว่าง ว่างหมายถึงข้าม
-
ตั้งให้มีแต่คุณที่อ่านได้:
Terminal window chmod 600 holyarrs-secrets.yaml -
เมานต์เข้า container แบบอ่านอย่างเดียว:
volumes:- /srv/holyarrs/config:/config- /srv/holyarrs/holyarrs-secrets.yaml:/run/secrets/holyarrs.yaml:ro -
สร้าง API key ของเจ้าของที่มีสโคป admin ใน Settings > API > API keys ใส่ไว้ในบล็อก
holyarrsของไฟล์ พร้อมที่อยู่http://127.0.0.1:6262 -
ลองรันทดสอบก่อน ไม่เปลี่ยนอะไรเลย:
Terminal window docker exec holyarrs /holyarrs import-secrets -file /run/secrets/holyarrs.yaml -dry-runจะเห็นบรรทัด
would setหนึ่งบรรทัดต่อหนึ่งรายการ -
รันจริง (คำสั่งเดิมโดยไม่มี
-dry-run) จะเห็นบรรทัดsetและ exit code0 -
ตรวจสอบแหล่งค้นหาและตัวดาวน์โหลดใหม่ แล้วทำต่อ ทดสอบมีเดียเซิร์ฟเวอร์ใหม่และการแจ้งเตือน แล้วเปิด
-
ลบไฟล์บนโฮสต์ (ดู ลบไฟล์) ลบ API key ด้วยถ้าไม่ใช้อีก
แต่ละบล็อกกลายเป็นอะไร
ลิงก์ไปยัง แต่ละบล็อกกลายเป็นอะไร| ในไฟล์ | กลายเป็น |
|---|---|
trakt.client_id |
คีย์แอป Trakt (Settings > Outside lists การตั้งค่า > ลิสต์ภายนอก) |
tmdb, tvdb |
รับจากไฟล์รุ่นเก่า เมตาดาตาไม่ต้องใช้คีย์ |
opensubtitles, subdl |
เว็บคำบรรยายพร้อมบัญชีของคุณ |
addic7ed |
เว็บคำบรรยาย Addic7ed เฉพาะซีรีส์ |
indexers |
แหล่งค้นหาหนึ่งแหล่งต่อหนึ่งรายการ ในสถานะ paused (หยุดชั่วคราว) |
jackett, prowlarr |
คีย์ของแอปเหล่านี้เติมให้ทุกรายการ indexers ที่ใช้ที่อยู่เดียวกันและยังไม่มีคีย์ |
qbittorrent, sabnzbd |
ตัวดาวน์โหลด ในสถานะ paused |
nzbget, transmission, deluge |
ข้าม การนำเข้ายังตั้งค่าตัวเหล่านี้ไม่ได้ ให้เพิ่มเองใน Settings > Downloaders |
jellyfin, emby, plex |
มีเดียเซิร์ฟเวอร์ ในสถานะ off (ปิด) จนกว่าคุณจะทดสอบ |
smtp, discord, webhook |
การแจ้งเตือน “Email”, “Discord” และ “Webhook” ในสถานะ off จนกว่าคุณจะทดสอบ |
radarr, sonarr, lidarr, prowlarr, bazarr, seerr |
คีย์ที่บันทึกไว้สำหรับ Import from other apps (นำเข้าจากแอปอื่น) |
holyarrs |
ใช้เพื่อเชื่อมต่อ HolyArrs ที่กำลังรันอยู่เท่านั้น ไม่เคยถูกบันทึก |
ทุกคีย์เข้าไปอยู่ในห้องนิรภัยที่เข้ารหัส เหมือนกับที่พิมพ์ใน Settings
ตัวเลือก
ลิงก์ไปยัง ตัวเลือกสวิตช์เครือข่ายภายใน
ลิงก์ไปยัง สวิตช์เครือข่ายภายในแต่ละบล็อกที่มีที่อยู่ใส่ allow_local_network: true ได้ ซึ่งให้รายการนั้นเข้าถึงเครื่องนี้หรือเครือข่ายในบ้านของคุณได้ (192.168.x.x, 10.x.x.x, ชื่อ container) ถ้าไม่มี รายการนั้นจะเข้าถึงได้แค่อินเทอร์เน็ต ตัวดาวน์โหลดที่อยู่ในบ้านจึงไม่ตอบสนอง HolyArrs ไม่เดาเรื่องนี้จากที่อยู่ เป็นสวิตช์เดียวกับ May reach the local network (อนุญาตให้เข้าถึงเครือข่ายภายใน) ใน Settings
เมื่อ HolyArrs หยุดอยู่
ลิงก์ไปยัง เมื่อ HolyArrs หยุดอยู่รัน container ชั่วคราวบนคอนฟิกเดียวกัน บันทึกลงโฟลเดอร์คอนฟิกโดยตรงและไม่ต้องมีบล็อก holyarrs:
docker stop holyarrsdocker run --rm -e PUID=1000 -e PGID=1000 \ -v /srv/holyarrs/config:/config \ -v /srv/holyarrs/holyarrs-secrets.yaml:/run/secrets/holyarrs.yaml:ro \ holyarrs/holyarrs:latest import-secrets -file /run/secrets/holyarrs.yamldocker start holyarrsใช้ PUID และ PGID เดียวกับแอป ไม่เช่นนั้นโฟลเดอร์คอนฟิกจะถูกยกให้ 1000:1000 ผู้ใช้ PUID ต้องอ่านไฟล์ได้ ถ้าใช้ HOLYARRS_MASTER_KEY_FILE ให้ container ชั่วคราวมีตัวแปรและการเมานต์เดียวกัน
รันซ้ำ
ลิงก์ไปยัง รันซ้ำรันซ้ำได้อย่างปลอดภัย รายการที่ตรงกันจะขึ้นว่า unchanged และบันทึกเฉพาะรายการที่เปลี่ยน
| รายการ | จับคู่ด้วย |
|---|---|
| แหล่งค้นหา | ชื่อ |
| ตัวดาวน์โหลด มีเดียเซิร์ฟเวอร์ | ชนิดและที่อยู่ |
| การแจ้งเตือน | ชื่อและชนิด |
| เว็บคำบรรยาย แอปรุ่นเดิม | ชนิด |
แหล่งค้นหาหรือตัวดาวน์โหลดที่ที่อยู่หรือคีย์เปลี่ยนจะถูกหยุดชั่วคราวอีกครั้ง เมื่อคุณทำต่อด้วยตัวเองแล้ว การรันซ้ำจะปล่อยให้ทำงานต่อไป api_key ที่ว่างในรายการ indexers จะคงคีย์ที่เก็บไว้ ใส่ clear_key: true เพื่อเอาออก
ลบไฟล์
ลิงก์ไปยัง ลบไฟล์ด้วย -delete คำสั่งจะเขียนทับไฟล์ด้วยศูนย์แล้วลบ เฉพาะหลังการรันที่ไม่มีอะไรล้มเหลว การเมานต์แบบอ่านอย่างเดียวลบจากภายใน container ไม่ได้ ให้ลบบนโฮสต์:
| ระบบ | คำสั่ง |
|---|---|
| Linux | shred -u holyarrs-secrets.yaml |
| macOS | rm -P holyarrs-secrets.yaml |
| Windows | Remove-Item holyarrs-secrets.yaml แล้วล้างถังขยะ |
บน SSD และระบบไฟล์แบบ copy-on-write บล็อกเก่าอาจยังค้างอยู่บนดิสก์ ส่วนตัวคีย์เองตอนนี้อยู่ในห้องนิรภัยที่เข้ารหัสแล้ว
ถ้าไม่ทำงาน
ลิงก์ไปยัง ถ้าไม่ทำงาน| อาการ | สาเหตุ | วิธีแก้ |
|---|---|---|
| ผู้ใช้อื่นอ่านไฟล์ได้ | สิทธิ์เปิดกว้างเกินไป | รัน chmod 600 บน Windows ให้เก็บไว้ในโฟลเดอร์ที่มีแต่คุณเปิดได้ |
| คีย์ที่ไม่รู้จักทำให้การนำเข้าหยุด | พิมพ์ผิด หรือมีแท็บในบรรทัดที่ระบุ | แก้บรรทัดนั้น ไม่มีอะไรถูกบันทึก |
| ปฏิเสธ http ธรรมดา | ที่อยู่ holyarrs ไม่ได้อยู่บนเครื่องนี้ |
รันภายใน container ด้วย http://127.0.0.1:6262 หรือใช้ https |
| ตัวดาวน์โหลดในบ้านไม่ตอบสนอง | ไม่มีสิทธิ์เข้าถึงเครือข่ายภายใน | ตั้ง allow_local_network: true บนบล็อกนั้น |
| container ชั่วคราวเปลี่ยนเจ้าของโฟลเดอร์ | PUID/PGID ต่างกัน |
ใช้ PUID และ PGID ของแอป |
-delete ไม่ทำอะไร |
มีบางอย่างล้มเหลว หรือการเมานต์เป็นแบบอ่านอย่างเดียว | ลบบนโฮสต์ |
สำหรับผู้เชี่ยวชาญ
ลิงก์ไปยัง สำหรับผู้เชี่ยวชาญแฟลกและ exit code
| แฟลก | ทำอะไร | ค่าเริ่มต้น |
|---|---|---|
-file <path> |
ไฟล์ความลับ | ไม่มี |
-dry-run |
บอกเฉพาะว่าจะตั้งอะไร | ปิด |
-config <folder> |
โฟลเดอร์คอนฟิก | /config |
-delete |
หลังการรันที่ไม่มีอะไรล้มเหลว เขียนทับไฟล์ด้วยศูนย์แล้วลบ | ปิด |
-forget-move-credentials |
ลบทุกคีย์ของแอปรุ่นเดิมที่บันทึกไว้ แล้วหยุด | ปิด |
-allow-http-lan |
อนุญาต http:// ธรรมดาไปยังที่อยู่ในเครือข่ายบ้าน แสดงคำเตือน |
ปิด |
-allow-readable-file |
รับไฟล์ที่ผู้ใช้อื่นอ่านได้ Docker Desktop บน Windows แสดงทุกไฟล์ว่าอ่านได้ | ปิด |
ที่อยู่ holyarrs ต้องเป็น https:// หรือ http:// ธรรมดาไปยังเครื่องนี้เท่านั้น (127.0.0.1, ::1, localhost) ผ่าน http ธรรมดา คีย์เจ้าของและทั้งไฟล์จะเดินทางโดยไม่เข้ารหัส
| Exit code | ความหมาย |
|---|---|
0 |
ทุกรายการสำเร็จ |
1 |
มีรายการล้มเหลว แก้ไฟล์แล้วรันอีกครั้ง |
2 |
บรรทัดคำสั่งหรือไฟล์ไม่ถูกต้อง |
ผลลัพธ์
หนึ่งบรรทัดต่อหนึ่งรายการ: set (หรือ would set ในการรันทดสอบ บางครั้งมีหมายเหตุ) unchanged skipped (empty) skipped (why) หรือ failed: why ไม่เคยพิมพ์คีย์ รหัสผ่าน token หรือที่อยู่ ประวัติจะได้ 1 เหตุการณ์ที่มีแค่จำนวน ข้อผิดพลาดที่จะแสดงค่าจากไฟล์ของคุณจะแสดง [hidden] แทน
รูปแบบไฟล์
YAML ส่วนเล็ก ๆ ที่เข้มงวด:
- บล็อกด้วยการเยื้องด้วยช่องว่าง ไม่ใช้แท็บ ลิสต์ใช้
- - ค่าเขียนเปล่า ๆ ใน
"double quotes"หรือ'single quotes'(เขียน'ในเครื่องหมายคำพูดเดี่ยวสองครั้ง) #เริ่มคอมเมนต์ที่ต้นบรรทัดหรือหลังช่องว่างนอกเครื่องหมายคำพูด ดังนั้นให้ใส่เครื่องหมายคำพูดให้รหัสผ่านที่มี#- ใส่เครื่องหมายคำพูดให้ค่าที่ขึ้นต้นด้วย
&,*,!,|,>,[,{,%,@หรือ backquote หรือที่มี:
คีย์ที่ไม่รู้จักหรือไฟล์ที่เกิน 256 KB จะหยุดการนำเข้าทั้งหมดก่อนบันทึกอะไร ข้อความจะระบุคีย์และบรรทัด ลิงก์ไปยังไฟล์จะถูกปฏิเสธ
ฟิลด์พิเศษ
| ฟิลด์ | กฎ |
|---|---|
| SABnzbd | ต้องใช้ api_key เต็ม nzb_key ชื่อผู้ใช้ หรือรหัสผ่านจะถูกข้ามและไม่เก็บ |
tvdb.api_key, tvdb.unique_user_key, trakt.redirect_urls |
รับและข้าม |
smtp.host |
ชื่อเซิร์ฟเวอร์เท่านั้น ไม่มี scheme หรือ port |
smtp.port |
1 ถึง 65535 ค่าเริ่มต้น 587 |
smtp.from |
ที่อยู่อีเมลธรรมดาหนึ่งที่อยู่ |
| บล็อกของแอปรุ่นเดิม | ใช้ใน Import from other apps ด้วย Use the saved key (ใช้คีย์ที่บันทึกไว้) ไม่แสดงเลย เฉพาะเจ้าของ ลบหลังอ่านสำเร็จหนึ่งครั้ง |
หน้าที่เกี่ยวข้อง
ลิงก์ไปยัง หน้าที่เกี่ยวข้องHolyArrs ใช้ได้ฟรี ถ้าช่วยประหยัดเวลาคุณได้ กดดาวบน GitHub, สนับสนุนโปรเจกต์ หรือ เลี้ยงกาแฟผู้พัฒนา