Last active
April 8, 2020 09:02
-
-
Save FilipChalupa/7c4dedec4541ee097f145f874361a297 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Write-Host "Synchronizing your docker time." | |
$principal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent()) | |
if ($principal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) { | |
$name = (Get-VMIntegrationService -VMName DockerDesktopVM | Where-Object { $_.Id.StartsWith("Microsoft:") -and $_.Id.EndsWith("\2497F4DE-E9FA-4204-80E4-4B75C46419C0") }).Name # "Time Synchronization" for English Windows | |
Get-VMIntegrationService -VMName DockerDesktopVM -Name $name | Disable-VMIntegrationService | |
Get-VMIntegrationService -VMName DockerDesktopVM -Name $name | Enable-VMIntegrationService | |
echo $name | |
Write-Host "Time synced!" | |
Read-Host -Prompt "Press Enter to exit." | |
} else { | |
Write-Host "Elevated privileges are required." | |
Start-Process -FilePath "powershell" -ArgumentList "$('-File ""')$(Get-Location)$('\')$($MyInvocation.MyCommand.Name)$('""')" -Verb runAs | |
} |
Yes, this seems to work:
$name = (Get-VMIntegrationService -VMName DockerDesktopVM | Where-Object { $_.Id.StartsWith("Microsoft:") -and $_.Id.EndsWith("\2497F4DE-E9FA-4204-80E4-4B75C46419C0") }).Name
Nice. Good job. I've updated the original gist. Thank you. :)
👍
By the way, I upgraded my Docker for Windows to version 2.2.0.5 and it seems to be much better at resyncing time after the PC went to hibernation. Anyway the script may still prove useful if there are cases when sync fails!
👌
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Making the script respect locale seems doable.