How To Increase The Size Of The Base Docker For Mac



The Streams Quick Start Edition (QSE) can help you get started with Streams quickly, without having to install a Streams cluster environment.

Resizing the Docker.qcow2 file to a new size consists of two steps. Make the disk larger; Adjust the partition; Increase disk size. First, let’s make the disk larger. SAP can occupy some space, make sure you add enough GB to the image. An additional 100 GB should do it. # docker info Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 0 Server Version: 18.03.1-ol Storage Driver: devicemapper Pool Name: docker-251:0-102683530-pool Pool Blocksize: 65.54kB Base Device Size: 26.84GB Backing Filesystem: xfs Udev Sync Supported: true Data file: /dev/loop0 data file Metadata file: /dev/loop1 metadata file Data loop. $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE abiodunjames/example-node-app latest be083a8e3159 7 minutes ago 83.2MB Running a Docker image. You run a Docker image by using the docker run API. The command is as follows: $ docker run -p80:3000 yourusername/example-node-app. The command is pretty simple. Expected behavior If allocated disk space is 128GB, container should be able to use 128GB (or close to). Actual behavior Allocated disk space does not have any impact on container disk space, which is 18GB for some reason on my machine.

Introduction

This document describes the installation, configuration, first steps,and common Docker management scenarios for IBM® Streams Quick StartEdition running in a Docker environment.

Overview

How To Increase The Size Of The Base Docker For Mac

Here’s an overview of the steps to get up and running:

  • Configure Docker’s storage requirements:
    • Instructions for Windows, MacOS, and Linux.
  • (Optional, but recommended): Set up a mapped directory on your local host filesystem for the Docker container.
  • Access the Streams Quick Start Edition:
    • Use a VNC client
    • Via Secure Shell (SSH).

Supported environments

Windows 10, running Docker Community Edition 17.03.1-ce or later.

MacOS El Capitan 10.11 or later, running Docker Community Edition17.03.1-ce or later.

Linux: It is recommended to use a systemd-based distribution with DockerCommunity Edition 17.03.1-ce or later. If you use the Standard Docker(Red Hat), you will need to adjust the Docker environment manually for50 GB of Docker storage.

Docker configuration requirements

Configure your Docker environment as follows.

MinimumRecommended
CPUs24
Memory4 GB8 GB
Disk space20 GB50 GB or greater depending upon number and size of projects.

Installing and configuring Docker on Windows

  1. Download and install Docker-CE 17.03.1 or later from:

    Note: Installing Docker may conflict with settings required for other VM technologies such as Oracle VM VirtualBox. The installation may also require that you set your VM technology settings in your BIOS settings. If this is necessary, Docker will warn you when you try to start it and tell you which settings to change.

  2. After you install Docker, configure it as follows:

    a. Right-click the Docker icon in the system tray, and then select Settings.

    b. Under Settings, select Shared Drives, and then share your hard disk drive (usually your C: drive).

    c. Under Settings, select Advanced, and then configure the CPUs (minimum 2, recommended 4) and Memory (minimum 4 GB, recommended 8 GB).

  3. Open a PowerShell session from the Windows menu and test that Docker is set up correctly by running this command:

    docker run hello-world

    You should receive a response that includes this text:

Installing and configuring Docker on MacOS

  1. Download and install Docker Community Edition for Mac from:

  2. After you install Docker, configure it as follows:

    a. From the Docker icon in the menu, click Preferences > Advanced.

    b. Configure the CPUs (minimum 2, recommended 4) and Memory (minimum 4 GB, recommended 8 GB).

  3. Open a Terminal session and test that Docker is set up correctly byrunning this command:

    docker run hello-world

    You should receive a response that includes this text:

Installing and configuring Docker on Linux

  1. Use the OS package manager to install Docker-ce (or for Red Hat,install the standard Docker).

  2. Confirm that the Docker installation has enough storage space forthe Streams Quick Start Edition image.

    Red Hat’s Standard Docker storage space is set to 10 GB. You will need to increase the storage space.

    Docker-ce is usually set to 20 GB. Depending on whether you will map directories to the local file system and the amount and the size ofyour applications and data, you might need to increase that limitbefore you install the Streams Quick Start Edition image.

    During the Streams Quick Start Edition installation, you will be prompted if you want to map two Docker directories, /home/streamsadmin/workspace and /home/streamsadmin/hostdir, to local host directories.

    • If you will be leaving the /home/streamsadmin/workspacedirectory in the Docker image, then set the storage space to atleast 50 GB.

    • If you will be mapping the /home/streamsadmin/workspace to alocal host directory, then you can set the Docker storage to 20 GBbecause projects and data can be stored on your local drive insteadof inside the Docker container.

    To set the Docker default image size, continue with the following steps:

  3. Log in as root or use sudo to create or edit the/etc/docker/daemon.json file. The file should contain thefollowing code where XX represents the default image size in GB:

  4. Verify the setting by restarting the docker service and confirmingthe Base Device Size by running these commands:

    sudo systemctl restart docker
    docker info |grep “Base Device Size:”

Mapping Docker container directories to the local host file system

During the Streams Quick Start Edition installation, you will beprompted if you want to map two Docker directories,/home/streamsadmin/workspace and /home/streamsadmin/hostdir, tolocal host directories.

Because the container has limited space, in most cases the best optionis to map to external directories. Doing so will help prevent thecontainer from exceeding its internal disk limits and make it easier foryou to back up your project data and upgrade your Streams Dockercontainer in the future.

  1. Create a new directory on your host machine where you can keep bothmapped directories isolated from other host machine files. Forexample:

    <HOME DIRECTORY>/mappedDockerFiles

    Important: Do not map the Docker files to the top-level user homedirectory.

  2. Make note of the directory. You will need to provide it duringinstallation.

The installation will create the mapped directories in your local hostfile system under <HOME DIRECTORY>/mappedDockerFiles for theinternal workspace and hostdir subdirectories. Duringinstallation, you will be prompted for the names that you want to useunder <HOME DIRECTORY>/mappedDockerFiles.

When you create Streams projects, the data files will belocated in the workspace directory. If this directory is mapped to the local host file system,the files and directories will be stored there instead in the internalDocker container. If later you upgrade your Streams4Docker installation,you can reuse this directory for easy recovery of your projects. Forexample, if you use the Import function of Streams Studio and point tothe workspace directory, the program will recognize all your projectdata. You can import all your projects using overwrite option.

The hostdir directory begins as an empty directory where you can addfiles that you want to share between your Docker container and yourlocal host. Keep any large files used in your Streams4Docker containerin this directory when possible because files in this directory do notuse up space inside the Docker container.

Download and install the Streams Quick Start Edition

After configuring Docker and mapping your directories, you are now ready to download and install the Quick Start Edition.

You have 2 options:

Download and install from Docker Hub

Below are sample commands for each major operating system.

Downloading and starting the container on Mac or Linux

Container with mapped directories:

The command is based on setting the MAPPED_WORKSPACE and MAPPED_HOSTDIR variables to the mapped directories you created, e.g.

Then run

Container without mapped directories:

Downloading and starting the container on Windows

Container with mapped directories:

The command is based on using the following mapped directories:

C:<user>DocumentsDockerMappedworkspaceC:<user>DocumentsDockerMappedhostdir

Container without mapped directories

Manual download and installation

Download the QSE using the link above, and then follow the instructions below for Windows, and Mac/Linux

Installing Streams Quick Start Edition manually on Windows

Prerequisite: Make sure you are connected to the Internet.

  1. Unzip the Docker<version>.zip file into a preferred directory.

  2. Open PowerShell, and change to the streams4docker<version>directory.

  3. Confirm you have permissions to run a PowerShell script:

    a. In the PowerShell window, determine your PowerShell execution policy:

    get-executionpolicy

    b. If your permissions are restricted, change them to unrestricted:

    set-executionpolicy unrestricted

    c. Optional: Reset your execution policy back to restricted:

    set-executionpolicy restricted

  4. Run the install script:

    ./streamsdockerInstall.ps1

  5. Read and accept the license agreement page, and then the Noticespage.

  6. Choose whether to map host local directories into Docker container.See Mapping Docker container directoriesto the local hostfilesysteminformation above.

  7. Confirm the directories and install.

The installation will continue automatically and take from 25 minutes to an hour or more depending on your host system configuration. When the installation completes, you are returned to a Streams4Docker command prompt.

Installing Streams Quick Start Edition on MacOS or Linux

Prerequisite: Make sure you are connected to the Internet.

  1. Unzip the Docker<version>.zip file into your preferreddirectory.

  2. From your Terminal session, change to thestreams4docker<version> directory.

  3. Run the install script:

    ./streamsdockerInstall.sh

  4. Read and accept the license agreement page, and then the Noticespage.

  5. Choose whether to map host local directories into Docker container.See Mapping Docker container directories to the local host filesysteminformation above.

  6. Confirm the directories and install.

The installation will continue automatically and take from 25 minutes to an hour or more depending on your host system configuration. When the installation completes, you are returned to a Streams4Docker command prompt.

Configuring the hosts file

Before accessing Streams Quick Start Edition, you need to set thehosts file to point the hostname streamsqse.localdomain to the127.0.0.1 loopback address. Streams operates using a hostname andusually expects DNS to provide the conversion from hostname to IPaddress. Because Streams Quick Start Edition does not have a DNS server,we will simulate one using the hosts file.

  1. Open your text editor:

    • Windows: Find Notepad in your Windows menu, right-click it andselect Run as Administrator.

    • MacOS or Linux: Open a text editor with root authority.

  2. Locate and open the hosts file:

    • Windows: In Notepad open:C:WindowsSystem32driversetchosts(Set Notepad filename filter to “All Files” to see the hostsfile.)

    • MacOS or Linux: Open the /etc/hosts file.

  3. Append streamsqse streamsqse.localdomain to the line that has theloopback address. For example:

  4. Save and close the file.

Accessing Streams Quick Start Edition with a VNC client

Use port 5905 to access Streams Quick Start Edition in the Dockercontainer with a VNC client.

  1. Open your preferred VNC Client and connect to:

    streamsqse.localdomain:5905

  2. When prompted for a password use:

    passw0rd

The default user name for the Console is streamsadmin.

On the Streams desktop, you access the Streams applications from the Applications menu.

Accessing Streams Quick Start Edition with Secure Shell (SSH)

You can use ssh to access the container by specifying streamsqse.localdomain and using port 4022. For example:

ssh -p 4022 streamsadmin@streamsqse.localdomain

By default, all passwords are passw0rd within an ssh session. If youare using the user name streamsadmin and you want to run a commandas root, you can use one of two methods:

  • sudo [command] Provide your streamsadmin password whenprompted. You run commands using sudo and return to streamsadmin IDafter the command is completed.

  • sudo su - Provide your streamsadmin password when prompted.You will be logged in as root. To return to the streamsadminuser ID, type: exit.

Managing the Docker container

Following are some useful commands for managing your Docker containerwith Streams Quick Start Edition.

Opening a session on Docker

You can use the attach command or the exec command to open asession on Docker.

The difference between the attach and exec commands is that theattach command takes you into the main root session, which may bebusy doing other functions (for example, it might be in the process ofstarting streams), which will prevent you from doing useful work, butwill allow for better troubleshooting in case of a problem; whereas theexec command opens a new separate root session.

Attaching to a running Docker container

  1. Open a PowerShell (Windows) or Terminal (MacOS or Linux).

  2. Determine the name of the session by typing docker ps. Youshould see the container streamsdocker4240 as running.

  3. Attach by running this command:

    docker attach streamsdocker4240

This will take you to the Docker container Linux promote.

Mac

How To Increase The Size Of The Base Docker For Mac High Sierra

Running a command in a running container with the exec command

Docker exec command:

docker exec -ti streamsdocker4240 /bin/bash

Detaching from the container

From within your attached Docker session, you can detach from thesession gracefully, while leaving the session active by using the keycombination Ctrl-q-p. (Windows and Linux) or command-q-p.(MacOS).

How To Increase The Size Of The Base Docker For Mac 10.6

Note: If you are attached and type exit, it might cause thecontainer to stop.

You can now close the PowerShell or Terminal session.

Pausing and unpausing the container

Often you might want to pause a container when it is not in use. Thenyou can unpause the container when you need it.

  1. Open a PowerShell (Windows) or Terminal (MacOS or Linux).

  2. If you are running external programs that are connected to thecontainer, close them.

  3. To pause the container, type docker pause streamsdocker4240. Thecontainer will go to sleep. All activity inside the container stops.

  4. When you are ready to return to using the container, open PowerShell(Windows) or Terminal (MacOS or Linux) and type docker unpausestreamsdocker4240.

Stopping and restarting the container

Ordinarily, stopping and restarting the container is not a recommendedway to manage the container. But sometimes you might need to do it. Forexample, for a reboot.

To stop a container, open PowerShell (Windows) or Terminal (MacOS orLinux), and type:

docker stop streamsdocker4240

To start a container, open PowerShell (Windows) or Terminal (MacOS orLinux), and type:

docker restart streamsdocker4240

When restarting a container, it takes a few minutes for the system tocome back up and start the domains. The recommended practice is to useVNC to access the desktop where you can see the yellow desktop icon(Streams Domain Starting) while the domain is being started. The iconturns green (Streams Domain Started) when the domain is ready, and theneventually disappears.

Adjusting the desktop screen size for VNC

When you first access Streams Quick Start Edition with VNC you will seethe Streams desktop.

How To Increase The Size Of The Base Docker For Mac Catalina

Size

If you are accustomed to earlier versions of Streams Quick StartEdition, you will notice that there are no longer any desktop Icons. AllStreams Quick Start Edition resources have been moved to theApplications > Favorites menu, which you can access from the topleft of the screen. There you will find the Streams applications andlinks to resource web pages.

How To Increase The Size Of The Base Docker For Mac Os

To adjust the display size to closer match your physical display, followthese steps:

  1. Go to Applications > System Tools > Settings.

  2. Click the Displays icon.

  3. In the Displays app, click Unknown Display.

  4. Click Resolution and select the resolution that best matchesyour physical display, and then click Apply.

  5. Click Keep Changes.

Known issues

How To Increase The Size Of The Base Docker For Mac
  1. Description: Running streamsdockerInstall.sh fails with the following message:

    Cause: This seems to be caused by a change in the Python repositories.

    Workaround:

    1. Go to the QSE install directory and locate the Ansible/streamsdockerCentos7.yaml file.
    2. Open the streamsdockerCentos7.yaml file in your favorite editor.
    3. Locate the following section:
    4. Change requests to request.
    5. Save the file.
    6. Remove the old container:
    7. Re-run the installation.
  2. Description: Streams Studio Project Explorer: Right-clicking a fileor folder, and then selecting Show in > System Explorer throws adbus error.

    Cause: CentOS 6 Nautilus is not compatible with dbus API.

    Workaround:

    1. Open Streams Studio.

    2. Go to Window > Preferences > General > Workspace.

    3. Set Command for launching system explorer to:

Getting Help

If your problem is not discussed in the known issues section above, please ask a question on the forums.