[Bug]: when deploying ABS with Docker Compose and including http_proxy parameters #2698

Open
opened 2026-02-20 02:59:23 -05:00 by deekerman · 0 comments
Owner

Originally created by @kwingart on GitHub (Jan 22, 2025).

What happened?

version: '3.5'

services:
audiobookshelf:
image: advplyr/audiobookshelf:2.18.1
container_name: audiobookshelf
restart: unless-stopped
network_mode: bridge
ports:
#- 127.0.0.1:13378:80
- 13378:80
volumes:
- /root/download/audiobooks:/audiobooks
- /root/download/podcasts:/podcasts
- ./config:/config
- ./metadata:/metadata
dns:
- 192.168.16.100
environment:
#- HTTP_PROXY=http://192.168.16.100:7890/
#- HTTPS_PROXY=http://192.168.16.100:7890/
- HTTP_PROXY=socks5://192.168.16.100:7890/
- HTTPS_PROXY=socks5://192.168.16.100:7890/
- DISABLE_SSRF_REQUEST_FILTER=1

After adding the - DISABLE_SSRF_REQUEST_FILTER=1 parameter, the following issue has been resolved.

[2025-01-22 10:49:48.205] ERROR: [podcastUtils] getPodcastFeed Error TypeError [ERR_INVALID_PROTOCOL]: Protocol "http:" not supported. Expected "https:"
audiobookshelf | at new ClientRequest (node:_http_client:187:11)
audiobookshelf | at Object.request (node:http:101:10)
audiobookshelf | at RedirectableRequest._performRequest (/node_modules/follow-redirects/index.js:326:24)
audiobookshelf | at new RedirectableRequest (/node_modules/follow-redirects/index.js💯8)
audiobookshelf | at Object.request (/node_modules/follow-redirects/index.js:532:14)
audiobookshelf | at dispatchHttpRequest (/node_modules/axios/lib/adapters/http.js:262:25)
audiobookshelf | at new Promise ()
audiobookshelf | at httpAdapter (/node_modules/axios/lib/adapters/http.js:49:10)
audiobookshelf | at dispatchRequest (/node_modules/axios/lib/core/dispatchRequest.js:58:10)
audiobookshelf | at Axios.request (/node_modules/axios/lib/core/Axios.js:109:15) {
audiobookshelf | code: 'ERR_INVALID_PROTOCOL'
audiobookshelf | }

but, there is a new error that episodes cannot be downloaded

[2025-01-22 11:20:23.276] INFO: [PodcastManager] Found 3 new episodes for podcast "黄奇帆的复旦经济课" - starting download
audiobookshelf | [2025-01-22 11:20:23.507] ERROR: [fileUtils] Failed to download file "/podcasts/黄奇帆的复旦经济课/金融的本质.m4a" AxiosError: Client network socket disconnected before secure TLS connection was established
audiobookshelf | at TLSSocket.onConnectEnd (node:_tls_wrap:1730:19)
audiobookshelf | at TLSSocket.emit (node:events:530:35)
audiobookshelf | at endReadableNT (node:internal/streams/readable:1698:12)
audiobookshelf | at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
audiobookshelf | localAddress: undefined,
audiobookshelf | port: '7890',
audiobookshelf | host: '192.168.16.100',
audiobookshelf | path: null,
audiobookshelf | code: 'ECONNRESET',
audiobookshelf | config: {
audiobookshelf | transitional: {
audiobookshelf | silentJSONParsing: true,
audiobookshelf | forcedJSONParsing: true,
audiobookshelf | clarifyTimeoutError: false
audiobookshelf | },
audiobookshelf | adapter: [Function: httpAdapter],
audiobookshelf | transformRequest: [ [Function: transformRequest] ],
audiobookshelf | transformResponse: [ [Function: transformResponse] ],
audiobookshelf | timeout: 30000,
audiobookshelf | xsrfCookieName: 'XSRF-TOKEN',
audiobookshelf | xsrfHeaderName: 'X-XSRF-TOKEN',
audiobookshelf | maxContentLength: -1,
audiobookshelf | maxBodyLength: -1,
audiobookshelf | env: { FormData: [Function] },
audiobookshelf | validateStatus: [Function: validateStatus],
audiobookshelf | headers: {
audiobookshelf | Accept: 'application/json, text/plain, /',
audiobookshelf | 'User-Agent': 'audiobookshelf (+https://audiobookshelf.org)',
audiobookshelf | host: 'aod.cos.tx.xmcdn.com'
audiobookshelf | },
audiobookshelf | url: 'https://jt.ximalaya.com//GKwRIUEGE1NxAGdQNgEvO4bh-aacv2-48K.m4a?channel=rss&album_id=56546063&track_id=514612141&uid=164124031&jt=https://aod.cos.tx.xmcdn.com/storages/adb4-audiofreehighqps/87/59/GKwRIUEGE1NxAGdQNgEvO4bh-aacv2-48K.m4a',
audiobookshelf | method: 'get',
audiobookshelf | responseType: 'stream',
audiobookshelf | httpAgent: null,
audiobookshelf | httpsAgent: null,
audiobookshelf | data: undefined
audiobookshelf | },

What did you expect to happen?

I hope the audio files can be downloaded successfully.

Steps to reproduce the issue

Access the ABS web interface.
Go to Podcasts.
Click on any existing subscription and select Download.

Audiobookshelf version

v2.18.1

How are you running audiobookshelf?

Docker

What OS is your Audiobookshelf server hosted from?

Linux

If the issue is being seen in the UI, what browsers are you seeing the problem on?

Chrome

Logs


Additional Notes

No response

Originally created by @kwingart on GitHub (Jan 22, 2025). ### What happened? version: '3.5' services: audiobookshelf: image: advplyr/audiobookshelf:2.18.1 container_name: audiobookshelf restart: unless-stopped network_mode: bridge ports: #- 127.0.0.1:13378:80 - 13378:80 volumes: - /root/download/audiobooks:/audiobooks - /root/download/podcasts:/podcasts - ./config:/config - ./metadata:/metadata dns: - 192.168.16.100 environment: #- HTTP_PROXY=http://192.168.16.100:7890/ #- HTTPS_PROXY=http://192.168.16.100:7890/ - HTTP_PROXY=socks5://192.168.16.100:7890/ - HTTPS_PROXY=socks5://192.168.16.100:7890/ - DISABLE_SSRF_REQUEST_FILTER=1 After adding the - DISABLE_SSRF_REQUEST_FILTER=1 parameter, the following issue has been resolved. [2025-01-22 10:49:48.205] ERROR: [podcastUtils] getPodcastFeed Error TypeError [ERR_INVALID_PROTOCOL]: Protocol "http:" not supported. Expected "https:" audiobookshelf | at new ClientRequest (node:_http_client:187:11) audiobookshelf | at Object.request (node:http:101:10) audiobookshelf | at RedirectableRequest._performRequest (/node_modules/follow-redirects/index.js:326:24) audiobookshelf | at new RedirectableRequest (/node_modules/follow-redirects/index.js:100:8) audiobookshelf | at Object.request (/node_modules/follow-redirects/index.js:532:14) audiobookshelf | at dispatchHttpRequest (/node_modules/axios/lib/adapters/http.js:262:25) audiobookshelf | at new Promise () audiobookshelf | at httpAdapter (/node_modules/axios/lib/adapters/http.js:49:10) audiobookshelf | at dispatchRequest (/node_modules/axios/lib/core/dispatchRequest.js:58:10) audiobookshelf | at Axios.request (/node_modules/axios/lib/core/Axios.js:109:15) { audiobookshelf | code: 'ERR_INVALID_PROTOCOL' audiobookshelf | } but, there is a new error that episodes cannot be downloaded [2025-01-22 11:20:23.276] INFO: [PodcastManager] Found 3 new episodes for podcast "黄奇帆的复旦经济课" - starting download audiobookshelf | [2025-01-22 11:20:23.507] ERROR: [fileUtils] Failed to download file "/podcasts/黄奇帆的复旦经济课/金融的本质.m4a" AxiosError: Client network socket disconnected before secure TLS connection was established audiobookshelf | at TLSSocket.onConnectEnd (node:_tls_wrap:1730:19) audiobookshelf | at TLSSocket.emit (node:events:530:35) audiobookshelf | at endReadableNT (node:internal/streams/readable:1698:12) audiobookshelf | at process.processTicksAndRejections (node:internal/process/task_queues:82:21) { audiobookshelf | localAddress: undefined, audiobookshelf | port: '7890', audiobookshelf | host: '192.168.16.100', audiobookshelf | path: null, audiobookshelf | code: 'ECONNRESET', audiobookshelf | config: { audiobookshelf | transitional: { audiobookshelf | silentJSONParsing: true, audiobookshelf | forcedJSONParsing: true, audiobookshelf | clarifyTimeoutError: false audiobookshelf | }, audiobookshelf | adapter: [Function: httpAdapter], audiobookshelf | transformRequest: [ [Function: transformRequest] ], audiobookshelf | transformResponse: [ [Function: transformResponse] ], audiobookshelf | timeout: 30000, audiobookshelf | xsrfCookieName: 'XSRF-TOKEN', audiobookshelf | xsrfHeaderName: 'X-XSRF-TOKEN', audiobookshelf | maxContentLength: -1, audiobookshelf | maxBodyLength: -1, audiobookshelf | env: { FormData: [Function] }, audiobookshelf | validateStatus: [Function: validateStatus], audiobookshelf | headers: { audiobookshelf | Accept: 'application/json, text/plain, */*', audiobookshelf | 'User-Agent': 'audiobookshelf (+https://audiobookshelf.org)', audiobookshelf | host: 'aod.cos.tx.xmcdn.com' audiobookshelf | }, audiobookshelf | url: 'https://jt.ximalaya.com//GKwRIUEGE1NxAGdQNgEvO4bh-aacv2-48K.m4a?channel=rss&album_id=56546063&track_id=514612141&uid=164124031&jt=https://aod.cos.tx.xmcdn.com/storages/adb4-audiofreehighqps/87/59/GKwRIUEGE1NxAGdQNgEvO4bh-aacv2-48K.m4a', audiobookshelf | method: 'get', audiobookshelf | responseType: 'stream', audiobookshelf | httpAgent: null, audiobookshelf | httpsAgent: null, audiobookshelf | data: undefined audiobookshelf | }, ### What did you expect to happen? I hope the audio files can be downloaded successfully. ### Steps to reproduce the issue Access the ABS web interface. Go to Podcasts. Click on any existing subscription and select Download. ### Audiobookshelf version v2.18.1 ### How are you running audiobookshelf? Docker ### What OS is your Audiobookshelf server hosted from? Linux ### If the issue is being seen in the UI, what browsers are you seeing the problem on? Chrome ### Logs ```shell ``` ### Additional Notes _No response_
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/audiobookshelf#2698
No description provided.