В Docker FTP сервер после запуска или простоя теряет/не получает часть данных от клиента

У меня есть Docker, в docker есть контейнер FTP stilliard/pure-ftpd (на самом деле пробовал и другие garethflowers/ftp-server, bogem/ftp - ситуация аналогичная). Есть клиент, который передает jpeg и csv. Пассивный режим. При первом запуске контейнера и после какого-то времени 1-2 передачи файлов не проходят, после работает все ок. Клиент не умеет буферизировать данные, в случае неудачной передачи. Подключил в docker drakkan/sftpgo, вручную добавил клиента FTP, потери данных нет, все работает как часы. Может кто подсказать, почему так происходит?

Конфигурация docker-compose:

  ftp:
    image: stilliard/pure-ftpd
    hostname: ftp
    container_name: ftp
    restart: always
    env_file:
      - _project_/settings/env/.env.dev
    volumes:
      - ftp-data:/home/test
    ports:
      - "21:21/tcp"
      - "30000-30009:30000-30009/tcp"
    depends_on:
      db:
        condition: service_healthy

ENV файл:

FTP_USER_NAME=test
FTP_USER_PASS=test
FTP_USER_HOME=/home/test
FTP_PASSIVE_PORTS=30000:30009
PUBLICHOST=10.10.10.10
ADDED_FLAGS=-d

log контейнера FTP:

2025-03-12 09:37:54 rsyslogd: imklog: cannot open kernel log (/proc/kmsg): Operation not permitted.
2025-03-12 09:37:54 rsyslogd: activation of module imklog failed [v8.1901.0 try https://www.rsyslog.com/e/2145 ]
2025-03-12 09:37:54 tail: cannot open '/var/log/pure-ftpd/pureftpd.log' for reading: No such file or directory
2025-03-12 09:38:50 tail: '/var/log/pure-ftpd/pureftpd.log' has appeared;  following new file
2025-03-12 09:37:54 Log enabled, see /var/log/messages
2025-03-12 09:37:54 Creating user...
2025-03-12 09:37:54 Password:
2025-03-12 09:37:54 Enter it again:
2025-03-12 09:37:54 Setting default port range to: 30000:30009
2025-03-12 09:37:54 Setting default max clients to: 5
2025-03-12 09:37:54 Setting default max connections per ip to: 5
2025-03-12 09:37:54 Starting Pure-FTPd:
2025-03-12 09:37:54   pure-ftpd  -l puredb:/etc/pure-ftpd/pureftpd.pdb -E -j -R -P 10.10.10.10 -d  -p 30000:30009 -c 5 -C 5

<!-- 1 Попытка получения данных, данные не пришли и утеряны -->
2025-03-12 09:38:51 Mar 12 02:38:50 ftp pure-ftpd: ([email protected]) [INFO] New connection from 172.18.0.1
2025-03-12 09:38:51 Mar 12 02:38:50 ftp pure-ftpd: ([email protected]) [INFO] Logout.
2025-03-12 09:38:51 Mar 12 02:38:51 ftp pure-ftpd: ([email protected]) [INFO] New connection from 172.18.0.1
2025-03-12 09:38:51 Mar 12 02:38:51 ftp pure-ftpd: ([email protected]) [INFO] Logout.

<!-- 2 Попытка получения данных, 1 файл утерян, csv файл обновился-->
2025-03-12 09:39:13 Mar 12 02:39:12 ftp pure-ftpd: ([email protected]) [INFO] New connection from 172.18.0.1
2025-03-12 09:39:13 Mar 12 02:39:12 ftp pure-ftpd: ([email protected]) [INFO] Logout.
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [INFO] New connection from 172.18.0.1
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [user] [test]
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [pass] [<*>]
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [INFO] test is now logged in
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [syst] []
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [cwd] [/10.10.10.11/]
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [type] [I]
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [pasv] []
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [appe] [20250312.csv]
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [NOTICE] /home/test//10.10.10.11/20250312.csv uploaded  (34 bytes, 29.20KB/sec)
2025-03-12 09:39:14 Mar 12 02:39:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [cwd] [/]
2025-03-12 09:54:14 Mar 12 02:54:13 ftp pure-ftpd: ([email protected]) [INFO] Timeout - try typing a little faster next time
<!-- 3 Попытка получения данных, через время, 1 файл утерян, csv файл обновился-->

2025-03-12 10:00:06 Mar 12 03:00:06 ftp pure-ftpd: ([email protected]) [INFO] New connection from 172.18.0.1
2025-03-12 10:00:06 Mar 12 03:00:06 ftp pure-ftpd: ([email protected]) [INFO] Logout.

<!-- 4 Попытка получения данных, оба файла получены-->
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [INFO] New connection from 172.18.0.1
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [user] [test]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [pass] [<*>]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [INFO] test is now logged in
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [syst] []
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [cwd] [/10.10.10.11/ng/]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [INFO] Can't change directory to /10.10.10.11/ng/: No such file or directory
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [mkd] [10.10.10.11]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [ERROR] Can't create directory: File exists
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [cwd] [10.10.10.11]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [mkd] [ng]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [cwd] [ng]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [type] [I]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [pasv] []
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [stor] [250312_104151815-.jpg]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [NOTICE] /home/test//10.10.10.11/ng/250312_104151815-.jpg uploaded  (42667 bytes, 8472.18KB/sec)
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [cwd] [/]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [cwd] [/10.10.10.11/]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [type] [I]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [pasv] []
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [appe] [20250312.csv]
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [NOTICE] /home/test//10.10.10.11/20250312.csv uploaded  (34 bytes, 29.18KB/sec)
2025-03-12 10:00:14 Mar 12 03:00:13 ftp pure-ftpd: ([email protected]) [DEBUG] Command [cwd] [/]

log клиента, на UDP не обращайте внимание, не подключен контроллер пока:

<!--1 передача данных после запуска сервера, оба файла утеряны-->
[03-12 14:00:14:0802] | Info     | FTP         :0464: transType:2, result: 1
[03-12 14:00:14:0802] | Info     | FORMATTER   :0256: str1: , str_len1: 0
[03-12 14:00:14:0802] | Info     | FORMATTER   :0259: str2: , str_len2: 0
[03-12 14:00:14:0805]| Info   | SYNC_IF  -L0424: sync if get result . release imgid = 0. ret = 0. debug_idx = 9.
[03-12 14:00:14:0835] | Info     | BIOP        :1400: udp output bcr info is NoRead|
[03-12 14:00:14:0846] | Error    | BIOP        :1469: check udp connection error,recreate socket!
[03-12 14:00:15:0838] | Error    | FTPCLI      :0869: error: recv, Resource temporarily unavailable
[03-12 14:00:15:0838] | Error    | FTPCLI      :0406: get response failed.
[03-12 14:00:15:0838] | Error    | FTPCLI      :0174: ret: 3
[03-12 14:00:15:0838] | Error    | FTP         :0141: upload file failed: 10.10.10.11/ng/250312_140014801-.jpg
[03-12 14:00:16:0862] | Error    | FTPCLI      :0869: error: recv, Resource temporarily unavailable
[03-12 14:00:16:0862] | Error    | FTPCLI      :0406: get response failed.
[03-12 14:00:16:0862] | Error    | FTPCLI      :0174: ret: 3
[03-12 14:00:16:0862] | Error    | FTP         :0141: upload file failed: 10.10.10.11/20250312.csv
[03-12 14:00:16:0862] | Info     | BUFFERPOOL  :0159: start:388325 end:434529 totalLen:157286392

<!--2 передача данных после запуска сервера, передался CSV только, jpg утерян-->
[03-12 14:10:02:0288] | Info     | FTP         :0464: transType:2, result: 1
[03-12 14:10:02:0289] | Info     | FORMATTER   :0256: str1: , str_len1: 0
[03-12 14:10:02:0289] | Info     | FORMATTER   :0259: str2: , str_len2: 0
[03-12 14:10:02:0289]| Info   | SYNC_IF  -L0424: sync if get result . release imgid = 1. ret = 0. debug_idx = 10.
[03-12 14:10:02:0356] | Info     | BIOP        :1400: udp output bcr info is NoRead|
[03-12 14:10:02:0367] | Error    | BIOP        :1469: check udp connection error,recreate socket!
[03-12 14:10:03:0294] | Error    | FTPCLI      :0869: error: recv, Resource temporarily unavailable
[03-12 14:10:03:0294] | Error    | FTPCLI      :0406: get response failed.
[03-12 14:10:03:0294] | Error    | FTPCLI      :0174: ret: 3
[03-12 14:10:03:0294] | Error    | FTP         :0141: upload file failed: 10.10.10.11/ng/250312_141002287-.jpg
[03-12 14:10:04:0336] | Info     | FTPCLI      :0282: FTP getResponse: 
[03-12 14:10:04:0336] | Info     | FTPCLI      :0299: FTP cut Response: 
[03-12 14:10:04:0336] | Info     | FTPCLI      :0300: port of data link: 30002
[03-12 14:10:04:0341] | Info     | BUFFERPOOL  :0159: start:434529 end:481282 totalLen:157286392
[03-12 14:10:17:0113] | Info     | GVCP        :0503: write register addr: 0x30950    name: DirZipCmd                      val: 0x1

<!--3 передача данных после запуска сервера, оба файла переданы-->
[03-12 14:13:59:0526] | Info     | FTP         :0464: transType:2, result: 1
[03-12 14:13:59:0526] | Info     | FORMATTER   :0256: str1: , str_len1: 0
[03-12 14:13:59:0526] | Info     | FORMATTER   :0259: str2: , str_len2: 0
[03-12 14:13:59:0527]| Info   | SYNC_IF  -L0424: sync if get result . release imgid = 2. ret = 0. debug_idx = 11.
[03-12 14:13:59:0529] | Error    | FTPCLI      :0640: change directory failed, /10.10.10.11/ng/
[03-12 14:13:59:0531] | Error    | FTPCLI      :0677: create directory failed, 10.10.10.11
[03-12 14:13:59:0539] | Info     | FTPCLI      :0282: FTP getResponse: 
[03-12 14:13:59:0539] | Info     | FTPCLI      :0299: FTP cut Response: 
[03-12 14:13:59:0539] | Info     | FTPCLI      :0300: port of data link: 30008
[03-12 14:13:59:0553] | Info     | FTPCLI      :0282: FTP getResponse: 
[03-12 14:13:59:0553] | Info     | FTPCLI      :0299: FTP cut Response: 
[03-12 14:13:59:0553] | Info     | FTPCLI      :0300: port of data link: 30001
[03-12 14:13:59:0558] | Info     | BUFFERPOOL  :0159: start:481282 end:527946 totalLen:157286392
[03-12 14:13:59:0608] | Info     | BIOP        :1400: udp output bcr info is NoRead|
[03-12 14:13:59:0619] | Error    | BIOP        :1469: check udp connection error,recreate socket!
[03-12 14:14:19:0004] | Info     | GVCP        :0503: write register addr: 0x30950    name: DirZipCmd                      val: 0x1

Ответы (0 шт):