Изнутри в gitlab ci pipe я создаю docker образ, используя Dockerfile. Мне нужно изменить часовой пояс на изображении docker с UT C на CST. Я пробовал несколько вещей (перечисленных ниже), но не могу изменить их. Надеялся, что кто-нибудь может указать мне правильное направление.
Linux Версия:
OS name: "linux", version: "4.15.0-72-generic", arch: "amd64", family: "unix"
Изнутри Dockerfile:
RUN sudo echo "America/Chicago" > /etc/timezone
Не работает. При вызове команды date
до и после часовой пояс остался неизменным.
Затем:
ENV TZ=America/Chicago
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
Не работал.
Изнутри файла gitlab-ci :
timedatectl
Failed to create bus connection: No such file or directory
Я прочитал, что мне нужно установить dbus .. поэтому я вставил в Dockerfile
apt-get install dbus
apt-get: command not found
Поэтому я подумал, что, возможно, изображение было на основе Alpine .. поэтому я попытался:
apk add --update dbus
timedatectl
Failed to create bus connection: No such file or directory
Итак, я в растерянности. Довольно новичок в этом, и не уверен, что еще делать.
Что я ожидаю.
Когда мои модульные тесты, выполняющиеся в этом образе, выполняют функции даты, они не тянут UT C, они тянут недавно обновленный часовой пояс, который я установил.
Есть предложения?