Missing timezone file on host prevents container start
ShutdownRepo opened this issue ยท comments
Existing container can't start because of missing timezone file.
Environment
[*] Exegol is currently in version v4.0.5b1
[D] Pip installation: Off ๐ช
[D] Git source installation: On โ
[D] Host OS: Mac
[D] Arch: arm64
[D] Docker desktop: On โ
[D] Shell type: Mac
[D] Last update check: 12/09/2022
Traceback
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Traceback (most recent call last) โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ โ
โ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/api/client.py:268 in โ
โ _raise_for_status โ
โ โ
โ 265 โ def _raise_for_status(self, response): โ
โ 266 โ โ """Raises stored :class:`APIError`, if one occurred.""" โ
โ 267 โ โ try: โ
โ โฑ 268 โ โ โ response.raise_for_status() โ
โ 269 โ โ except requests.exceptions.HTTPError as e: โ
โ 270 โ โ โ raise create_api_error_from_http_exception(e) from e โ
โ 271 โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ response = <Response [400]> โ โ
โ โ self = <docker.api.client.APIClient object at 0x1028dc1c0> โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ /Users/charlie/Library/Python/3.8/lib/python/site-packages/requests/models.py:960 in โ
โ raise_for_status โ
โ โ
โ 957 โ โ โ http_error_msg = u'%s Server Error: %s for url: %s' % (self.status_code, rea โ
โ 958 โ โ โ
โ 959 โ โ if http_error_msg: โ
โ โฑ 960 โ โ โ raise HTTPError(http_error_msg, response=self) โ
โ 961 โ โ
โ 962 โ def close(self): โ
โ 963 โ โ """Releases the connection back to the pool. Once this method has been โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ http_error_msg = '400 Client Error: Bad Request for url: โ โ
โ โ http+docker://localhost/v1.41/containers/'+70 โ โ
โ โ reason = 'Bad Request' โ โ
โ โ self = <Response [400]> โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
HTTPError: 400 Client Error: Bad Request for url:
http+docker://localhost/v1.41/containers/68349ee30f9fc8007d2a0e384a3913ce418ed67a1e518cf31e44c554c237bceb/start
The above exception was the direct cause of the following exception:
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Traceback (most recent call last) โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ โ
โ /Users/charlie/Projects/Exegol/exegol/manager/ExegolController.py:35 in main โ
โ โ
โ 32 โ โ # Set logger verbosity depending on user input โ
โ 33 โ โ ExeLog.setVerbosity(ParametersManager().verbosity, ParametersManager().quiet) โ
โ 34 โ โ # Start Main controller & Executing action selected by user CLI โ
โ โฑ 35 โ โ ExegolController.call_action() โ
โ 36 โ except KeyboardInterrupt: โ
โ 37 โ โ logger.empty_line() โ
โ 38 โ โ logger.info("Exiting") โ
โ /Users/charlie/Projects/Exegol/exegol/manager/ExegolController.py:23 in call_action โ
โ โ
โ 20 โ โ โ # Fetch main operation function โ
โ 21 โ โ โ main_action = cls.__action() โ
โ 22 โ โ โ # Execute main function โ
โ โฑ 23 โ โ โ main_action() โ
โ 24 โ โ else: โ
โ 25 โ โ โ # TODO review required parameters โ
โ 26 โ โ โ logger.error(f"These parameters are mandatory but missing: {','.join(missing โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ cls = <class 'exegol.manager.ExegolController.ExegolController'> โ โ
โ โ main_action = <bound method ExegolManager.start of <class โ โ
โ โ 'exegol.manager.ExegolManager.ExegolManager'>> โ โ
โ โ missing_params = [] โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /Users/charlie/Projects/Exegol/exegol/manager/ExegolManager.py:79 in start โ
โ โ
โ 76 โ โ if not container.isNew(): โ
โ 77 โ โ โ # Check and warn user if some parameters don't apply to the current session โ
โ 78 โ โ โ cls.__checkUselessParameters() โ
โ โฑ 79 โ โ container.start() โ
โ 80 โ โ container.spawnShell() โ
โ 81 โ โ
โ 82 โ @classmethod โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ cls = <class 'exegol.manager.ExegolManager.ExegolManager'> โ โ
โ โ container = <exegol.model.ExegolContainer.ExegolContainer object at 0x102997eb0> โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /Users/charlie/Projects/Exegol/exegol/model/ExegolContainer.py:103 in start โ
โ โ
โ 100 โ โ โ logger.info(f"Starting container {self.name}") โ
โ 101 โ โ โ self.preStartSetup() โ
โ 102 โ โ โ with console.status(f"Waiting to start {self.name}", spinner_style="blue"): โ
โ โฑ 103 โ โ โ โ self.__container.start() โ
โ 104 โ โ
โ 105 โ def stop(self, timeout: int = 10): โ
โ 106 โ โ """Stop the docker container""" โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ self = <exegol.model.ExegolContainer.ExegolContainer object at 0x102997eb0> โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/models/containers.py:404 in โ
โ start โ
โ โ
โ 401 โ โ โ :py:class:`docker.errors.APIError` โ
โ 402 โ โ โ โ If the server returns an error. โ
โ 403 โ โ """ โ
โ โฑ 404 โ โ return self.client.api.start(self.id, **kwargs) โ
โ 405 โ โ
โ 406 โ def stats(self, **kwargs): โ
โ 407 โ โ """ โ
โ โ
โ โญโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโฎ โ
โ โ kwargs = {} โ โ
โ โ self = <Container: 68349ee30f9f> โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/utils/decorators.py:19 in โ
โ wrapped โ
โ โ
โ 16 โ โ โ โ raise errors.NullResource( โ
โ 17 โ โ โ โ โ 'Resource ID was not provided' โ
โ 18 โ โ โ โ ) โ
โ โฑ 19 โ โ โ return f(self, resource_id, *args, **kwargs) โ
โ 20 โ โ return wrapped โ
โ 21 โ return decorator โ
โ 22 โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ args = () โ โ
โ โ f = <function ContainerApiMixin.start at 0x1026341f0> โ โ
โ โ kwargs = {} โ โ
โ โ resource_id = '68349ee30f9fc8007d2a0e384a3913ce418ed67a1e518cf31e44c554c237bceb' โ โ
โ โ resource_name = 'container' โ โ
โ โ self = <docker.api.client.APIClient object at 0x1028dc1c0> โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/api/container.py:1121 in start โ
โ โ
โ 1118 โ โ โ ) โ
โ 1119 โ โ url = self._url("/containers/{0}/start", container) โ
โ 1120 โ โ res = self._post(url) โ
โ โฑ 1121 โ โ self._raise_for_status(res) โ
โ 1122 โ โ
โ 1123 โ @utils.check_resource('container') โ
โ 1124 โ def stats(self, container, decode=None, stream=True): โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ args = () โ โ
โ โ container = '68349ee30f9fc8007d2a0e384a3913ce418ed67a1e518cf31e44c554c237bceb' โ โ
โ โ kwargs = {} โ โ
โ โ res = <Response [400]> โ โ
โ โ self = <docker.api.client.APIClient object at 0x1028dc1c0> โ โ
โ โ url = 'http+docker://localhost/v1.41/containers/68349ee30f9fc8007d2a0e384a3913ce418edโฆ โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/api/client.py:270 in โ
โ _raise_for_status โ
โ โ
โ 267 โ โ try: โ
โ 268 โ โ โ response.raise_for_status() โ
โ 269 โ โ except requests.exceptions.HTTPError as e: โ
โ โฑ 270 โ โ โ raise create_api_error_from_http_exception(e) from e โ
โ 271 โ โ
โ 272 โ def _result(self, response, json=False, binary=False): โ
โ 273 โ โ assert not (json and binary) โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ response = <Response [400]> โ โ
โ โ self = <docker.api.client.APIClient object at 0x1028dc1c0> โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/errors.py:39 in โ
โ create_api_error_from_http_exception โ
โ โ
โ 36 โ โ โ cls = ImageNotFound โ
โ 37 โ โ else: โ
โ 38 โ โ โ cls = NotFound โ
โ โฑ 39 โ raise cls(e, response=response, explanation=explanation) from e โ
โ 40 โ
โ 41 โ
โ 42 class APIError(requests.exceptions.HTTPError, DockerException): โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ cls = <class 'docker.errors.APIError'> โ โ
โ โ e = HTTPError('400 Client Error: Bad Request for url: โ โ
โ โ http+docker://localhost/v1.41/containers/68349ee30f9fc8007d2a0e384a3913ce418eโฆ โ โ
โ โ explanation = 'invalid mount config for type "bind": bind source path does not exist: โ โ
โ โ /host_mnt'+59 โ โ
โ โ response = <Response [400]> โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
APIError: 400 Client Error for http+docker://localhost/v1.41/containers/68349ee30f9fc8007d2a0e384a3913ce418ed67a1e518cf31e44c554c237bceb/start: Bad
Request ("invalid mount config for type "bind": bind source path does not exist:
/host_mnt/private/var/db/timezone/tz/2022a.1.0/zoneinfo/Europe/Paris")
Indeed it's strange, did you modify something on your host?
Could you do the following tests?
ls -la /etc/timezone
exegol info <container_name>
docker inspect <container_name or id>
Thank you!
I don't think I modified anything on my host
MacBook Pro ~ $ ls -la /etc/timezone
ls: /etc/timezone: No such file or directory
MacBook Pro ~ $ ls -la /etc/localtime
lrwxr-xr-x 1 root wheel 38 Jun 22 11:31 /etc/localtime -> /var/db/timezone/zoneinfo/Europe/Paris
I deleted the container featured in the traceback above. However, I had another container laying around with the same issue, so here it is.
MacBook Pro ~ $ exegol info -vvv htb-forest
[*] Exegol is currently in version v4.0.5b1
[D] Pip installation: Off ๐ช
[D] Git source installation: On โ
[D] Host OS: Mac
[D] Arch: arm64
[D] Docker desktop: On โ
[D] Shell type: Mac
[D] Last update check: 12/09/2022
[+] Exegol thanks Capgemini for supporting the project (dev contributors) ๐
[+] Interested in joining Capgemini? https://www.capgemini.com/fr-fr/carrieres/offres-emploi/
[V] Listing user configurations
๐ง User configurations
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Private workspace: /Users/charlie/.exegol/workspaces โ
โ Exegol resources: /Users/charlie/Projects/Exegol/exegol-resources โ
โ My resources: /Users/charlie/.exegol/my-resources โ
โ Auto-check updates: On โ โ
โ Auto-remove images: On โ โ
โ Auto-update fs: Off ๐ช โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
[V] Listing git repositories
[D] Loading git at /Users/charlie/Projects/Exegol
[D] Repo path: /Users/charlie/Projects/Exegol/.git
[D] Git repository successfully loaded
[D] Loading git at /Users/charlie/Projects/Exegol
[D] Repo path: /Users/charlie/Projects/Exegol/.git
[D] Git repository successfully loaded
[V] Git wrapper init submodules
[D] Git submodule repository detected
[D] Loading git at /Users/charlie/Projects/Exegol/exegol-docker-build
[D] Repo path: /Users/charlie/Projects/Exegol/.git/modules/sources
[D] Git repository successfully loaded
[D] Git submodule repository detected
[D] Loading git at /Users/charlie/Projects/Exegol/exegol-resources
[D] Repo path: /Users/charlie/Projects/Exegol/.git/modules/exegol-resources
[D] Git repository successfully loaded
[D] Fetch flags : 4
[D] Fetch note :
[D] Fetch old commit : None
[D] Fetch remote path : dev
[D] HEAD UP TO DATE flag detected
[D] Fetch flags : 4
[D] Fetch note :
[D] Fetch old commit : None
[D] Fetch remote path : dev
[D] HEAD UP TO DATE flag detected
[D] Fetch flags : 4
[D] Fetch note :
[D] Fetch old commit : None
[D] Fetch remote path : main
[D] HEAD UP TO DATE flag detected
๐ Project modules
โโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโ
โ Name โ Status โ Current branch โ
โโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโค
โ Wrapper โ Update available โ dev โ
โ Images โ Update available โ dev โ
โ Resources โ Update available โ main โ
โโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโ
[D] Attribute not found in parameters: multicontainertag
[D] == Loading container : exegol-htb-forest
[D] Parsing envs : DISPLAY=host.docker.internal:0
[D] Adding env DISPLAY=host.docker.internal:0
[D] Parsing envs : _JAVA_AWT_WM_NONREPARENTING=1
[D] Adding env _JAVA_AWT_WM_NONREPARENTING=1
[D] Parsing envs : QT_X11_NO_MITSHM=1
[D] Adding env QT_X11_NO_MITSHM=1
[D] Parsing envs : PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
[D] Adding env PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
[D] Capabilities : ['NET_ADMIN']
[D] Load devices : ['/dev/net/tun:/dev/net/tun:rwm']
[D] Parsing mount : {'Type': 'bind', 'Source': '/Users/charlie/.exegol/workspaces/htb-forest', 'Destination': '/workspace', 'Mode': '',
'RW': True, 'Propagation': 'rprivate'}
[D] Loading workspace volume source : /Users/charlie/.exegol/workspaces/htb-forest
[D] Private workspace detected
[D] Parsing mount : {'Type': 'bind', 'Source': '/etc/localtime', 'Destination': '/etc/localtime', 'Mode': '', 'RW': False,
'Propagation': 'rprivate'}
[D] Parsing mount : {'Type': 'bind', 'Source': '/Users/charlie/.exegol/my-resources', 'Destination': '/my-resources', 'Mode': '', 'RW':
True, 'Propagation': 'rprivate'}
[D] Parsing mount : {'Type': 'bind', 'Source': '/Users/charlie/Projects/Exegol/exegol-resources', 'Destination': '/opt/resources',
'Mode': '', 'RW': True, 'Propagation': 'rprivate'}
[D] Parsing mount : {'Type': 'bind', 'Source': '/tmp/.X11-unix', 'Destination': '/tmp/.X11-unix', 'Mode': '', 'RW': True,
'Propagation': 'rprivate'}
[D] Parsing mount : {'Type': 'bind', 'Source': '/Users/charlie/Downloads/lab_Shutdown.ovpn', 'Destination': '/vpn/config/client.ovpn',
'Mode': '', 'RW': False, 'Propagation': 'rprivate'}
[D] Loading VPN config: lab_Shutdown.ovpn
[D] Try to retrieve image version from labels
[D] โโโ local โ (local) N/A
โญ Container summary
โโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Name โ htb-forest โ
โ Image โ local - v.local (Local image) โ
โโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ GUI โ On โ โ
โ Network โ bridge with VPN โ
โ Timezone โ On โ โ
โ Exegol resources โ On โ (/opt/resources) โ
โ My resources โ On โ (/my-resources) โ
โ Shell logging โ Off ๐ช โ
โ VPN โ lab_Shutdown.ovpn โ
โ Privileged โ Off โ โ
โ Capabilities โ NET_ADMIN โ
โ Workspace โ Dedicated (/workspace) โ
โ Devices โ /dev/net/tun:/dev/net/tun:rwm โ
โ Envs โ DISPLAY=host.docker.internal:0 โ
โ โ _JAVA_AWT_WM_NONREPARENTING=1 โ
โ โ QT_X11_NO_MITSHM=1 โ
โ โ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin โ
โ Volumes โ /Users/charlie/.exegol/workspaces/htb-forest โก /workspace โ
โ โ /etc/localtime โก /etc/localtime (RO) โ
โ โ /Users/charlie/.exegol/my-resources โก /my-resources โ
โ โ /Users/charlie/Projects/Exegol/exegol-resources โก /opt/resources โ
โ โ /tmp/.X11-unix โก /tmp/.X11-unix โ
โ โ /Users/charlie/Downloads/lab_Shutdown.ovpn โก /vpn/config/client.ovpn (RO) โ
โ Systctls โ net.ipv6.conf.all.disable_ipv6 = 0 โ
โโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
MacBook Pro ~ $ docker inspect exegol-htb-forest
[
{
"Id": "8e78a51712a1da09eeb498d8adb43476eb4b0da272b84fb0e9acdd75fbf296ee",
"Created": "2022-06-21T13:50:01.060898087Z",
"Path": "bash",
"Args": [
"-c",
"cd /vpn/config; openvpn --config /vpn/config/client.ovpn | tee /var/log/vpn.log; bash"
],
"State": {
"Status": "exited",
"Running": false,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 0,
"ExitCode": 255,
"Error": "",
"StartedAt": "2022-06-21T18:17:00.181699213Z",
"FinishedAt": "2022-06-22T09:31:51.869414875Z"
},
"Image": "sha256:03ef9d8db3e8f24ece4c1106e84a672e7860869e24eb7b95675be9bff121d5dd",
"ResolvConfPath": "/var/lib/docker/containers/8e78a51712a1da09eeb498d8adb43476eb4b0da272b84fb0e9acdd75fbf296ee/resolv.conf",
"HostnamePath": "/var/lib/docker/containers/8e78a51712a1da09eeb498d8adb43476eb4b0da272b84fb0e9acdd75fbf296ee/hostname",
"HostsPath": "/var/lib/docker/containers/8e78a51712a1da09eeb498d8adb43476eb4b0da272b84fb0e9acdd75fbf296ee/hosts",
"LogPath": "/var/lib/docker/containers/8e78a51712a1da09eeb498d8adb43476eb4b0da272b84fb0e9acdd75fbf296ee/8e78a51712a1da09eeb498d8adb43476eb4b0da272b84fb0e9acdd75fbf296ee-json.log",
"Name": "/exegol-htb-forest",
"RestartCount": 0,
"Driver": "overlay2",
"Platform": "linux",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "",
"ExecIDs": null,
"HostConfig": {
"Binds": null,
"ContainerIDFile": "",
"LogConfig": {
"Type": "json-file",
"Config": {}
},
"NetworkMode": "bridge",
"PortBindings": null,
"RestartPolicy": {
"Name": "",
"MaximumRetryCount": 0
},
"AutoRemove": false,
"VolumeDriver": "",
"VolumesFrom": null,
"CapAdd": [
"NET_ADMIN"
],
"CapDrop": null,
"CgroupnsMode": "private",
"Dns": [],
"DnsOptions": [],
"DnsSearch": [],
"ExtraHosts": null,
"GroupAdd": null,
"IpcMode": "private",
"Cgroup": "",
"Links": null,
"OomScoreAdj": 0,
"PidMode": "",
"Privileged": false,
"PublishAllPorts": false,
"ReadonlyRootfs": false,
"SecurityOpt": null,
"UTSMode": "",
"UsernsMode": "",
"ShmSize": 67108864,
"Sysctls": {
"net.ipv6.conf.all.disable_ipv6": "0"
},
"Runtime": "runc",
"ConsoleSize": [
0,
0
],
"Isolation": "",
"CpuShares": 0,
"Memory": 0,
"NanoCpus": 0,
"CgroupParent": "",
"BlkioWeight": 0,
"BlkioWeightDevice": null,
"BlkioDeviceReadBps": null,
"BlkioDeviceWriteBps": null,
"BlkioDeviceReadIOps": null,
"BlkioDeviceWriteIOps": null,
"CpuPeriod": 0,
"CpuQuota": 0,
"CpuRealtimePeriod": 0,
"CpuRealtimeRuntime": 0,
"CpusetCpus": "",
"CpusetMems": "",
"Devices": [
{
"PathOnHost": "/dev/net/tun",
"PathInContainer": "/dev/net/tun",
"CgroupPermissions": "rwm"
}
],
"DeviceCgroupRules": null,
"DeviceRequests": null,
"KernelMemory": 0,
"KernelMemoryTCP": 0,
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": null,
"OomKillDisable": null,
"PidsLimit": null,
"Ulimits": null,
"CpuCount": 0,
"CpuPercent": 0,
"IOMaximumIOps": 0,
"IOMaximumBandwidth": 0,
"Mounts": [
{
"Type": "bind",
"Source": "/tmp/.X11-unix",
"Target": "/tmp/.X11-unix"
},
{
"Type": "bind",
"Source": "/etc/localtime",
"Target": "/etc/localtime",
"ReadOnly": true
},
{
"Type": "bind",
"Source": "/Users/charlie/.exegol/my-resources",
"Target": "/my-resources"
},
{
"Type": "bind",
"Source": "/Users/charlie/Projects/Exegol/exegol-resources",
"Target": "/opt/resources"
},
{
"Type": "bind",
"Source": "/Users/charlie/Downloads/lab_Shutdown.ovpn",
"Target": "/vpn/config/client.ovpn",
"ReadOnly": true
},
{
"Type": "bind",
"Source": "/Users/charlie/.exegol/workspaces/htb-forest",
"Target": "/workspace"
}
],
"MaskedPaths": [
"/proc/asound",
"/proc/acpi",
"/proc/kcore",
"/proc/keys",
"/proc/latency_stats",
"/proc/timer_list",
"/proc/timer_stats",
"/proc/sched_debug",
"/proc/scsi",
"/sys/firmware"
],
"ReadonlyPaths": [
"/proc/bus",
"/proc/fs",
"/proc/irq",
"/proc/sys",
"/proc/sysrq-trigger"
]
},
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/eb03bc9d5de499e56042cb8e92b54bc67e7fe39de0c2b392b6ea1459c668f9cc-init/diff:/var/lib/docker/overlay2/a84699789ac3baa877c4e5e698eead0b6a94a5d706b77c375218ad56d4953d77/diff:/var/lib/docker/overlay2/cf49047d5ad00422b14dc900ac4e6985afe2bc652daf4bff8843f4310e74e916/diff:/var/lib/docker/overlay2/d86620f9e0b88d110e4a0b83b999f3226c4ec52f0244a8e269c593b84433b736/diff:/var/lib/docker/overlay2/d7cad6bba1be468d5aea25d545e0155eb7d8a38fac36cbe9dbf99fc72d65a61b/diff:/var/lib/docker/overlay2/b564cee377ab67208b503715289d9bd05154cbfef2c56ea9098550bad49cc323/diff:/var/lib/docker/overlay2/7f93be582dc4ee5312527e03073f1854485a8738dc14cd288189d411e70606dc/diff:/var/lib/docker/overlay2/e842c9279b24c02c69bbeb94e1a52ae875756675e16fe03b154aee8cce2b0bf6/diff:/var/lib/docker/overlay2/c4f978768d0dde55a945bce648370448c121d26b481b1b0ef88573dc3690cdc6/diff:/var/lib/docker/overlay2/6f0c42480dff9e30c5eacb308e62c08cfbed59f74d59960694122baf1de19319/diff:/var/lib/docker/overlay2/fe58721c2bc4c93d04d5e8e3b6c89a39666e248cd57f2b8caf11709cb02cd287/diff:/var/lib/docker/overlay2/d8e911c2747169d828e88abddeabc50c7d5f409b609f1356d13faf6837a944cb/diff:/var/lib/docker/overlay2/81d5a8b9dd903fc872c62b4b6b9d2ff1f6b99d5c3abdf3947bf6448c2104fdc4/diff:/var/lib/docker/overlay2/4a91db227070c348e1bd657c40b8b422a985edf37d14236717c39698baf6754a/diff:/var/lib/docker/overlay2/caa2791cea0d4cbc7df9b4783c13c2d2aa096502f7f50ff63e6850a7f723445e/diff:/var/lib/docker/overlay2/1186bacdfb1922232a03944b0dc9df5ba0675e702539d4a23c503055b1364675/diff:/var/lib/docker/overlay2/ef1a1b4306d289c3724c0d3dcab3c3dd604f15a7359674f4bc58cff6fd17c952/diff:/var/lib/docker/overlay2/cfa5bc12618374428589c26d113cdd216d2d0c586f1e13a373fa2922d2260e03/diff:/var/lib/docker/overlay2/9ae60df23848682773ea392286373ca7ba393df1e0e6c050feff683e2b6d7ab6/diff:/var/lib/docker/overlay2/af5e07ba29b6769b7f959cd0290de97aa57f1ed152fbad593af43791e0148864/diff:/var/lib/docker/overlay2/bd61af81ac350f1b567a046d0f8904e45a9e62a80dc8876118489cd916180f74/diff:/var/lib/docker/overlay2/1b93e5dacd54e5f7243dae23f6a276e18f7e126c10596685e83aff9b93d89ae9/diff:/var/lib/docker/overlay2/e041c62948fd1a42d529ba0f899b8d0984c957cf1297b5713035d8725eeae944/diff:/var/lib/docker/overlay2/af02f2c4f1f8928206561463f318abac5b644cf3a2efd737eb6798af4866fe91/diff:/var/lib/docker/overlay2/f918f20ea6126bdaed3e1edf08068203f585cc6795e2a0e568cd769820a381e3/diff:/var/lib/docker/overlay2/2625fea8ee2be6599d8ee6490582f268a188fa63fb1ae7bdd0d31d113561b213/diff:/var/lib/docker/overlay2/24e4c6246d6fff84906a134c9390b44d91930cfc3532c8fc17eee14ea1ce1c39/diff:/var/lib/docker/overlay2/7971a984c344820c508bb1bc0359a767edd55e58b1cdff7da83e935f58946276/diff",
"MergedDir": "/var/lib/docker/overlay2/eb03bc9d5de499e56042cb8e92b54bc67e7fe39de0c2b392b6ea1459c668f9cc/merged",
"UpperDir": "/var/lib/docker/overlay2/eb03bc9d5de499e56042cb8e92b54bc67e7fe39de0c2b392b6ea1459c668f9cc/diff",
"WorkDir": "/var/lib/docker/overlay2/eb03bc9d5de499e56042cb8e92b54bc67e7fe39de0c2b392b6ea1459c668f9cc/work"
},
"Name": "overlay2"
},
"Mounts": [
{
"Type": "bind",
"Source": "/etc/localtime",
"Destination": "/etc/localtime",
"Mode": "",
"RW": false,
"Propagation": "rprivate"
},
{
"Type": "bind",
"Source": "/Users/charlie/.exegol/my-resources",
"Destination": "/my-resources",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
},
{
"Type": "bind",
"Source": "/Users/charlie/Projects/Exegol/exegol-resources",
"Destination": "/opt/resources",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
},
{
"Type": "bind",
"Source": "/tmp/.X11-unix",
"Destination": "/tmp/.X11-unix",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
},
{
"Type": "bind",
"Source": "/Users/charlie/Downloads/lab_Shutdown.ovpn",
"Destination": "/vpn/config/client.ovpn",
"Mode": "",
"RW": false,
"Propagation": "rprivate"
},
{
"Type": "bind",
"Source": "/Users/charlie/.exegol/workspaces/htb-forest",
"Destination": "/workspace",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
],
"Config": {
"Hostname": "exegol-htb-forest",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": true,
"OpenStdin": true,
"StdinOnce": false,
"Env": [
"DISPLAY=host.docker.internal:0",
"_JAVA_AWT_WM_NONREPARENTING=1",
"QT_X11_NO_MITSHM=1",
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
],
"Cmd": [
"bash",
"-c",
"cd /vpn/config; openvpn --config /vpn/config/client.ovpn | tee /var/log/vpn.log; bash"
],
"Image": "nwodtuhs/exegol:local",
"Volumes": null,
"WorkingDir": "/workspace",
"Entrypoint": null,
"OnBuild": null,
"Labels": {
"org.exegol.app": "Exegol",
"org.exegol.build_date": "2022-05-29T20:28:35Z",
"org.exegol.src_repository": "https://github.com/ShutdownRepo/Exegol-images",
"org.exegol.tag": "arm64",
"org.exegol.version": "local"
}
},
"NetworkSettings": {
"Bridge": "",
"SandboxID": "9a4687d332daf71536e6721377ee9d563dc93b7e27d17d6aefb97c716f62083e",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {},
"SandboxKey": "/var/run/docker/netns/9a4687d332da",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "82601e4f35a06a113e74e26107db81c886bc9e05a58e3e7d02fe539f2b10e2ac",
"Gateway": "172.17.0.1",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "172.17.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"MacAddress": "02:42:ac:11:00:02",
"Networks": {
"bridge": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
"NetworkID": "f604b27308c84d73bf4d01ace80b846147dea78641bdf748e9e85bbaa0d4dcfb",
"EndpointID": "82601e4f35a06a113e74e26107db81c886bc9e05a58e3e7d02fe539f2b10e2ac",
"Gateway": "172.17.0.1",
"IPAddress": "172.17.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:11:00:02",
"DriverOpts": null
}
}
}
}
]
It seems that your tzdata
(or equivalent) package has been updated since the creation of your container, leading to the modification of your /etc/localtime
file
The strange behavior is that /etc/localtime
is a symlink to /var/db/timezone/zoneinfo/Europe/Paris
and after the update the container seems to have kept the file previously targeted: /var/db/timezone/tz/2022a.1.0/zoneinfo/Europe/Paris
I don't know why docker desktop solved the symlink when creating the container..
If the need is blocking, just create a new symlink with the previous path to /etc/localtime
otherwise recreating the container is the best option.
It remains to be seen if this behavior occurs at each update of the package or if it was a unique change.
After investigation it is a behavior of docker desktop that does not correctly handle volumes that rely on symlink.
This bug should be reported to docker.