Skip to content

Instantly share code, notes, and snippets.

@jspenc72
Last active December 13, 2018 22:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jspenc72/628d7153a5733aa46c0975433ba9a6a5 to your computer and use it in GitHub Desktop.
Save jspenc72/628d7153a5733aa46c0975433ba9a6a5 to your computer and use it in GitHub Desktop.
windows_cmd_cheat_sheet

Install Chocolatey

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

Install git with chocolatey

choco install git.install

Install cygwin with chocolatey

choco install cygwin

run git-bash

start "C:\Program Files\Git\git-bash.exe"

Download Docker (git bash) Alternatively you can follow instructions here: https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/quick-start-windows-server

curl -O https://download.docker.com/win/stable/Docker%20for%20Windows%20Installer.exe
#Edge
curl -O https://download.docker.com/win/edge/Docker%20for%20Windows%20Installer.exe
#Specify build

curl -O https://download.docker.com/win/stable/19098/Docker%20for%20Windows%20Installer.exe

Install Docker

./Docker%20for%20Windows%20Installer.exe

# Select "Use windows containers..."
# Restart computer, after restarting docker will prompt you to enable HyperV Click "Ok" computer will restart automatically.
# 

Recipe for Success Docker - Windows Server 2016 https://success.docker.com/article/manually-enable-docker-for-windows-prerequisites

Hyper v isolation https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-containers/hyperv-container

Restart /r to request restart /t 0 sets the time to 0 seconds until it restarts.

shutdown /r /t 0

Start the docker daemon

net start docker

Create docker-machine

docker-machine create --driver vmwarefusion vm 

Regenerate certs

docker-machine regenerate-certs vm
docker-machine -D create --driver generic --generic-ip-address <IPADDRESS> winvm

Setup docker on Windows Server 2016

Install-WindowsFeat

Enable Containers on Windows Server 2016

Enable-WindowsOptionalFeature -Online -FeatureName Containers

Remove docker in windows

*** Warning: Users have reported mixed results of the script below. Use with caution.

https://success.docker.com/article/how-to-completely-remove-docker-in-windows-10

    $ErrorActionPreference = "SilentlyContinue"

    kill -force -processname 'Docker for Windows', com.docker.db, vpnkit, com.docker.proxy, com.docker.9pdb, moby-diag-dl, dockerd

    try {
        ./MobyLinux.ps1 -Destroy
    } Catch {}

    $service = Get-WmiObject -Class Win32_Service -Filter "Name='com.docker.service'"
    if ($service) { $service.StopService() }
    if ($service) { $service.Delete() }
    Start-Sleep -s 5
    Remove-Item -Recurse -Force "~/AppData/Local/Docker"
    Remove-Item -Recurse -Force "~/AppData/Roaming/Docker"
    if (Test-Path "C:\ProgramData\Docker") { takeown.exe /F "C:\ProgramData\Docker" /R /A /D Y }
    if (Test-Path "C:\ProgramData\Docker") { icacls "C:\ProgramData\Docker\" /T /C /grant Administrators:F }
    Remove-Item -Recurse -Force "C:\ProgramData\Docker"
    Remove-Item -Recurse -Force "C:\Program Files\Docker"
    Remove-Item -Recurse -Force "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Docker"
    Remove-Item -Force "C:\Users\Public\Desktop\Docker for Windows.lnk"
    Get-ChildItem HKLM:\software\microsoft\windows\currentversion\uninstall | % {Get-ItemProperty $_.PSPath}  | ? { $_.DisplayName -eq "Docker" } | Remove-Item -Recurse -Force
    Get-ChildItem HKLM:\software\classes\installer\products | % {Get-ItemProperty $_.pspath} | ? { $_.ProductName -eq "Docker" } | Remove-Item -Recurse -Force
    Get-Item 'HKLM:\software\Docker Inc.' | Remove-Item -Recurse -Force
    Get-ItemProperty HKCU:\software\microsoft\windows\currentversion\Run -name "Docker for Windows" | Remove-Item -Recurse -Force
    #Get-ItemProperty HKCU:\software\microsoft\windows\currentversion\UFH\SHC | ForEach-Object {Get-ItemProperty $_.PSPath} | Where-Object { $_.ToString().Contains("Docker for Windows.exe") } | Remove-Item -Recurse -Force $_.PSPath
    #Get-ItemProperty HKCU:\software\microsoft\windows\currentversion\UFH\SHC | Where-Object { $(Get-ItemPropertyValue $_) -Contains "Docker" }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment