Тема: Docker синхронізація часу
Я з докером тільки починаю працювати, тому якщо я не додав важливої інформації про докер напишіть що саме.
Докер встановлений на Windows 10, версія Docker Desktop 4.13.0 (89412)
Використовує WSL 2 рушій
Мені потрібно запустити на докері пітон-застосунок, який через API постійно працює з ін. сервером (зовнішнім / не моїм) в реальному часі. Ось цей зовнішній сервер вимагає, щоб до нього зверталися з точним часом, інакше видає помилку про не успішно оброблений запит.
На Windows в мене включена синхронізація часу. А в докер контейнері я не можу включити синхронізації часу, тому що systemctl не можна викликати
Як я прочитав, контейнер не запускає init system, а тому в контейнері не можна викликати systemctl
Знайшов інформацію про те, що можна ввімкнути синхронізацію часу додавши в файл <file name>.yml
volumes:
- "/etc/localtime:/etc/localtime:ro"
Після цього в мене виникають дивні багі десь раз на три дні. Помилка в тому що останній тік, запізнюється на деякий час.
Last tick is <number> minutes old
Помилка тіка - це повідомлення з пітон-застосунок (а саме від CCXT library). Тобто не від контейнера.
Навіть якщо в такому випадку натиснути синхронізацію часу в ручну у Windows, помилка не зникає.
Єдине що може виправити цю помилку, це перезавантаження docker.
В мене виникла підозра ще це стається після розриву з'єднання з інтернетом (я в Україні, тому це часто відбувається). Але коли я спробував фізично від'єднати кабель інтернету на 5хв і потім підключити. Після підключення кабелю помилка не з'явилася. Тобто поки пітон-застосунок працював без інтернету зрозуміло що він показував помилку обробки запиту, але після підключення кабелю запити успішно виконався, і робота продовжилася без будь-яких помилок
Питання: В мене інколи (не розумію чому, не можу знайти причини) пітон-застосунок на Docker починає видавати помилки тіків, тобто синхронізації часу. Із за чого це може бути, як це можна виправити ?