12/28/2021

Install Docker Quickstart Terminal

24

After the install and I run Docker Quickstart terminal and get the same problem looks like something went wrong in step 'looking for vboxmanage.exe'. Look at the file D: Docker Toolbox start.sh, there are some code fragment:. Install Docker Toolbox for windows as shown in the Docker Docs. This should install the bundle, shown below, required to access Docker from a QuickStart terminal.

Install docker quickstart terminal software

If you're running macOS or Windows you have a few options for installing Docker. There's even a third way too, and we'll compare them here.

Quick Jump: OS and Hardware RequirementsPros and ConsWhich One Should I Use?

Install Docker Quickstart Terminal

If you’re on macOS or Windows you can install Docker with:

  1. Docker for Mac / Windows (now known as Docker Desktop)
  2. Docker Toolbox
  3. Running your own Virtual Machine and installing Docker yourself

All 3 of those options have their own pros and cons and in this article we’re going to cover them. If you’re looking for a high level overview of what Docker for Mac / Windows and Docker Toolbox is, then check out this article on getting to know Docker’s ecosystem.

OS and Hardware Requirements

It’s helpful to know what you can install before we compare everything, so let’s do that:

Docker for Mac (Docker Desktop)

Docker for Mac requires that you’re running Mojave 10.14+ or newer with an Intel CPU. M1 support is on its way.

You can run VirtualBox 6+ alongside Docker Desktop. This is pretty useful because you might have some legacy apps running in Vagrant / VirtualBox to deal with (I know I do!).

Docker for Windows (Docker Desktop)

As of May 27th 2020, Microsoft released Windows 10 build 2004 (Spring 2020) that allows you to run Docker Deskop on all editions of Windows 10, including Home thanks to WSL 2.

As of August 2020, Microsoft enabled WSL 2 support for Windows 10 builds 1903 + 1909.

For years prior to that you could only run it on Windows Pro, Enterprise or any edition that had Hyper-V available, but since August 2020 pretty much all supported versions of Windows 10 can use Docker Desktop.

You can also run VirtualBox 6+ alongside Docker Desktop too in case you have older projects using VirtualBox (perhaps with Vagrant too).

Docker Toolbox

Prior to mid-2020 this was still a reasonable way to run Docker on machines that couldn’t run Docker Desktop, but that’s no longer the case.

It’s now considered legacy and as of late 2020 it’s been officially deprecated.

Unless you’re using unsupported versions of Windows or have a really really ancient Mac you shouldn’t need to ever use this tool.

But if you’re in a pinch and you absolutely must use it, technically it’s still available at https://github.com/docker/toolbox/releases, but it’s no longer maintained by Docker.

Your own Virtual Machine

Install Docker Quickstart Terminal

Docker will happily run inside of VirtualBox, VMWare Workstation or any other Type 1 / 2 Hypervisor that’s running a major distribution of Linux as a guest OS.

If for whatever reason you can’t use Docker Desktop then this solution would be better than using Docker Toolbox since you can install supported versions of Docker and you have full control over the environment.

Pros and Cons

Now for the good stuff!

Docker for Mac / Docker for Windows (Docker Desktop)

Pros
  • Offers the most “native” experience, you can easily use any terminal you you want since Docker is effectively running on localhost from macOS / Windows’ POV.

  • Docker is heavily developing and polishing this solution.

Cons
  • On certain macOS hardware combos the volume performance can be a little slow.

  • I can legit say there are not any “wow this sucks!” cons for Windows, it’s really solid.

Docker Toolbox

Pros
  • Offers an “out of the box” Docker experience if you have no other choice.
Cons
  • It’s deprecated by Docker and will receive no future maintenance.

  • You need to either use the Docker Quickstart Terminal, or configure your own terminal to connect to the Docker Daemon running a VM.

  • Not a native solution, so you’ll need to access your Docker Machine’s IP address if you’re developing web apps. Example: 192.168.99.100 instead of localhost.

  • Unless you jump through hoops, your code needs to live in your Windows user directory such as C:UsersNicksrcmyapp. Otherwise Docker won’t be able to find it.

  • Suffers from typical VirtualBox edge case bugs and mount performance issues.

Your own Virtual Machine

I’m not going to bother listing a pros and cons here because I wouldn’t recommend doing this UNLESS you’re stuck on Windows 7 / 8 or an older version of Windows 10 like 1809.

But more on that in a bit.

Which One Should I Use?

If you’re interested in Docker, you’re a smart person and you probably came to the conclusion that using Docker for Mac or Docker for Windows is a good idea as long as you can run it.

My recommendation would be to try Docker for Mac / Windows first, and test it against your actual use cases. The performance issues may or may not be a concern, especially since everyone’s needs and computer specs are different.

I’ve been using Docker Desktop on Windows for full time development since late 2018 and it’s been nothing short of fantastic. Currently I use it with WSL 2, but it was really good with WSL 1 along with Hyper-V too.

Stuck on an Old Version of Windows and Like Linux?

I want to mention a “roll your own VM” solution for Windows users because I feel like there’s an even better way to run Docker on Windows if you also like Linux and are stuck not being able to use modern versions of Windows 10.

It involves running VMWare Player in a special mode called “Unity mode”. This basically allows you to run Windows and Linux together seamlessly as 1 operating system.

There’s no dual booting and Linux applications (even graphical apps) run in their own floating windows. Then you can install Docker natively on Linux inside of the VM.

The performance is excellent and the entire set up is free too.

I used this set up for about 5 years until Docker Desktop was available. It gives you the best of both worlds. For example, I run high end audio / video apps on Windows while recording courses and screencasts that cover Linux content. It all works great (even for full time development).

You can watch a video guide and see screenshots on how to do that in this post on creating an awesome Linux development environment in Windows.

Are you using the Docker Toolbox, Docker for Mac / Windows or your own VM?

In the previous tutorial we learned how to install Docker and get our first container running. In this tutorial we are going to learn how to mount additional directories within our Docker container that are outside of the c:Users directory. By default, Docker only mounts the c:Users directory inside the docker machine and containers. For myself, I have all of my project files two places: c:projects and c:personal. I didn’t want to change my standard configuration just for Docker.

This article is part of a series.

  • Part 2 - This Article

In the previous tutorial we learned how to install Docker and get our first container running. In this tutorial we are going to learn how to mount additional directories within our Docker container that are outside of the c:Users directory. By default, Docker only mounts the c:Users directory inside the docker machine and containers. For myself, I have all of my project files two places: c:projects and c:personal. I didn’t want to change my standard configuration just for Docker. Luckily, it is really easy to mount additional directories.

Install docker quickstart terminals

To mount additional directories, you need to add the directory as a shared folder within Virtualbox and then enable long file paths and symlinks. Once the Virtualbox shared folders are setup, you need to mount the directories within the docker machine so that they are available to the containers.

Step 1: Adding Shared Folders

The first step is to add the directories as Virtualbox shared folders by using the VBoxManage.exe utility that comes with Virtualbox. VBoxManage.exe is located in your Virtualbox install directory, which by default is C:Program FilesOracleVirtualBox.

Warning: To make symlinks works when you start up the docker-machine, you need to run the Docker Quickstart Terminal or Command Line as an administrator. This is a security limitation of Windows for symlinks.

Before adding the shared folders, we need to make sure that no docker machines are running. We are going to check for running docker containers and machines as both a non-admin and admin.

Non-Admin Checking For Running Machines

Launch the Windows Command Prompt and run

If any machines comes back with the state of running, you will need to stop the machine.

  1. Before stopping the machine you will want to make sure that your containers are stopped.

  2. For any containers that are returned you can stop them by running

  3. Once all of the containers are stop, you can stop the docker machine. Replace the “[machine name]” with you machine name that we returned from the docker-machine ls command. Typically you will only have 1 machine and it will be named default

Admin Checking For Running Machines

  1. Open the Windows Command Prompt as an administrator.

    • Start Menu
    • Search for command prompt
    • Right-click on the Command Prompt and select Run as Administrator
  2. To check if any docker machines are running, run the command:

If any machines comes back with the state running, you will need to stop the machine.

  1. Before stopping the machine you will want to make sure that your containers are stopped.

  2. For any containers that are returned you can stop them by running

  3. Once all of the containers are stop, you can stop the docker machine. Replace the “[machine name]” with you machine name that we returned from the docker-machine ls command. Typically you will only have 1 machine and it will be named default

We are now ready to add in our shared folders.

  1. Navigate to the Virtualbox directory.

  2. Run the following command to add the shared folders. For your shared folders, replace the projects or personal name in the name and hostpath options.

The ? in the hostpath tells Windows to enable long file paths.

Install Docker Quickstart Terminal Download

Step 2: Allow Long Paths and Symlinks

If you are using node many of the modules will create symlinks which are supported under Virtualbox but you need to make a configuration change to enable them.

Next you need to enable symlinks for each of the shared folders. Replace SharedFolderName with the –name value that you used when creating the sharedfolder.

Step 3: Mounting Shared Folders in Docker

Warning: To make symlinks works when you start up the docker-machine, you need to run the Docker Quickstart Terminal as an administrator. This is a security limitation of Windows for symlinks. Right-click on the Docker Quickstart Terminal and select Run As Administrator.

Unfortunately even with auto-mount Docker will only mount the c/Users folder in the docker-machine. If you want the folders to auto-mount you will need to manually mount them each time you start up the default docker machine.

  1. Open the Docker Quickstart Terminal as an administrator

    • Start Menu
    • Search for Docker Quickstart Terminal
    • Right-click on the Docker Quickstart Terminal and select “Run as Administrator”
  2. In order to mount the directories we need to ssh into the docker machine

  3. Once you have ssh’ed into the docker machine run the following commands to mount the shared folders we created.

  4. Within the docker machine you should now be able to see the files and directories in /c/projects and c/personal

  5. exit the ssh session

  6. You are now ready to start up or create your containers

Step 4: Using the Shared Folders

Now that the shared folders are mounted in the docker machine to use them from a container -v argument. The command below will mount the local directory c:projects (in unix form /c/projects) to /projects within the container. The -it say run interactively, ubuntu is the image name and bash is the type of interactive shell

From the container, you can look at the projects directory by running

You are now ready to start using the container for your development work. In the next tutorial we will look at running docker containers in the background for processes like mysql and postgres.

Terminal

This article is part of a series.

  • Part 2 - This Article
Share Article On:
  • Most Viewed News

    • How To Play Netflix Offline On Mac
    • Download Windows 10 64 Bit Full Version
    • Kitematic Docker Mac
    • Diskmaker X Sierra