Post on 14-Aug-2020
Version: 1.1
Release: August, 2019
Abstract:
This document guides you through deploying Docker containers via
Infortrend-powered Docker. You can run Docker containers by using Docker
templates and other methods. Several use cases are also introduced in this user
guide.
Docker User Guide
Legal Information
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 2 / 31
Legal Information
All Infortrend products, including the product/s that customers have purchased from Infortrend, are subject to the latest Standard Warranty Policy available on the Infortrend website:
https://www.infortrend.com/global/Support/terms-conditions
Infortrend may from time to time modify, update or upgrade the software, firmware or any accompanying user documentation without any prior notice. Infortrend will provide access to these new software, firmware, or documentation releases from certain download sections of our website or through our service partners. Customer will be responsible for maintaining updated version of the software, firmware, or other documentation by downloading or obtaining from Infortrend, and installing designated updated code, including but not limited to firmware, microcode, basic input/out system code, utility programs, device drivers, and diagnostics delivered with Infortrend product.
Before installing any software, applications or components provided by a third party, customer should ensure that they are compatible and interoperable with Infortrend product by checking in advance with Infortrend. Customer is solely responsible for ensuring the compatibility and interoperability of the third party’s products with Infortrend product. Customer is further solely responsible for ensuring its systems, software, and data are adequately backed up as a precaution against possible failures, alternation, or loss.
For any questions of hardware/ software compatibility, and the update/ upgrade code, customer should contact Infortrend sales representative or technical support for assistance.
To the extent permitted by applicable laws, Infortrend will NOT be responsible for any interoperability or compatibility issues that may arise when (1) products, software, or options not certified and supported by Infortrend are used; (2) configurations not certified and supported by Infortrend are used; (3) parts intended for one system are installed in another system of different make or model.
Trademarks Infortrend, the Infortrend logo, SANWatch, EonOne and EonStor are registered trademarks of Infortrend Technology, Inc. Other names prefixed with “IFT”, “DS”, “GS”, “GSa”, “GSc”, “GSi”, “GSe”, “GSe Pro” are trademarks of Infortrend Technology, Inc.
All other names, brands, products or services are trademarks or
registered trademarks of their respective owners.
Contact Information
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 3 / 31
Contact Information
Website For more information of Infortrend’s products and services, visit:
https://www.infortrend.com/global/Home
Customer Support Contact your system vendor or visit the following support site.
http://www.infortrend.com/global/Support/Support
Contents
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 4 / 31
Contents
Legal Information ............................................................................................................................... 2
Contact Information ........................................................................................................................... 3
Contents ............................................................................................................................................. 4
Preface ............................................................................................................................................... 6
Audience .................................................................................................................................................... 6
What’s in This Guide .................................................................................................................................. 6
What You Should Know Before Reading .................................................................................................... 6
Getting Started ................................................................................................................................... 7
Overview .................................................................................................................................................... 7
Docker Architecture ................................................................................................................................... 8
Deploy Docker Containers with Templates ........................................................................................ 10
Find Templates in App Store .................................................................................................................... 10
Create a Custom Template ....................................................................................................................... 11
Run Templates to Deploy Containers ....................................................................................................... 13
Other Ways of Deploying Containers ................................................................................................. 14
Pull Container Images from a Docker Registry ........................................................................................ 14
Import a Docker Container Image ........................................................................................................... 15
Import a Docker Container Snapshot ...................................................................................................... 16
Build a Docker Container Image .............................................................................................................. 17
Run Your Docker Container Image ........................................................................................................... 18
Contents
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 5 / 31
Use Cases ......................................................................................................................................... 19
Nextcloud ................................................................................................................................................. 19
Veritas NetBackup Client ......................................................................................................................... 23
MySQL ...................................................................................................................................................... 24
NGINX ....................................................................................................................................................... 28
Preface
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 6 / 31
Preface
The purpose of this document is to aim the user to get familiar with Docker and App Store provided in
Infortrend unified storage server. It provides deployment example as tutorial for user to get started with
his first application.
Audience
This document is intended for Infortrend customers, partners, and employees using Infortrend
unified storage systems with Docker applications.
What’s in This Guide
This document contains the following topics:
Docker overview
Deploying Docker containers using Docker templates
Deploying Docker containers using other methods
Running Docker containers
Docker use cases
What You Should Know Before Reading
This document expects that you are familiar with basic server, storage, and networking concepts and
configurations.
Getting Started
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 7 / 31
Getting Started
Overview
What is Docker?
Docker is an open-source OS-level virtualization platform that allows users to develop, deploy, and run
applications in independent containers.
The Docker platform powered by Infortrend comes with graphic user interface (GUI). The GUI not only
streamlines container management, but also features an app store with a set of predefined containers
for quick deployment.
Features of Infortrend-powered Docker?
Docker provides easy ways to deploy applications for different uses:
For general users: You can deploy a Docker container image by clicking on a preferred one in the
app store.
For advanced users: You can pull preferred Docker images from a popular Docker registry (e.g.
Docker Hub) or other private registries through the GUI. .
For software developers: You can create customized Docker container images through the GUI for
software development and testing.
Getting Started
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 8 / 31
Docker Architecture
Docker registries
A Docker registry is an online library that stores container images to deploy and run on Docker. One of
the main public Docker registries is Docker Hub, where individuals can store, download, and share
container images.
Container images
A container image is a read-only template with instructions for creating a Docker container. In the Docker
container, an application runs in the execution environment with the specified settings.
Docker containers
A Docker container is a runtime instance of a Docker container image, and it runs natively on Linux and
shares the kernel of the host machine with other Docker containers. A Docker container runs a discrete
process independent of other containers, using no more memory than any other executable, making its
memory usage lightweight. Compared with virtual machines that run applications on virtual hardware
powered by the server’s host operating system, containers require less computational resource and
make the best use of the computing power.
Containers offer a logical packaging mechanism in which applications can be abstracted from the
environment where they actually run. Container-based applications therefore can be deployed easily and
consistently in different environments like a private data center, the public cloud, or even a developer’s
personal laptop. This gives developers the ability to create predictable environments that are isolated
from rest of the applications and can be run anywhere.
Getting Started
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 9 / 31
Launch Infortrend-powered Docker
Before running a Docker container, you must launch Docker on the system.
1. Go to the Infortrend device’s management interface.
2. Click Settings > Applications > Docker.
3. Turn on the Docker platform.
4. Click + to set an existing file-level volume as the Docker storage. The volume is used to store data
generated by Docker and data required to run containers.
5. Click Save to save the settings.
6. Click Launch Docker to open the Docker interface. For quick access, enter the IP address in your
web browser:
DEVICE_IP_ADDRESS:9000
Deploy Docker Containers with Templates
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 10 / 31
Deploy Docker Containers with Templates
The App Store features templates for various Docker container images—artificial intelligence (AI),
Internet of things (IoT), video surveillance, and much more. A template specifies a Docker container
image along with preset parameters of the execution environment. By using a template, you can quickly
deploy and run a Docker container with little fuss.
Find Templates in App Store
1. When you reach the Docker interface, navigate to the left panel and click App Store.
2. The page displays preset Docker templates for applications such as Caffe2 and TensorFlow.
3. To find a desired Docker template, do any of the following:
Select a desired category from the top-right menu to display belonging templates.
Enter a keyword in the top search bar to find matching templates.
Click on the sorting buttons on the top-right to sort templates in order.
Deploy Docker Containers with Templates
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 11 / 31
Create a Custom Template
You can create a new Docker template from scratch or by modifying an existing one.
1. Click Add template on the top left corner. You can also select an existing template to modify, and
click Show advanced options.
2. Specify the Docker template information:
Title Specify a title for the template.
Description Provide a description for the template.
3. Specify the advanced template information:
Name Assign a name to the container created by the template.
Logo URL Provide a link to display the template’s logo image.
Note Specify extra information regarding the template.
Platform Select Linux or Linux+GPU as the running environment.
Categories Assign the template to a category.
4. Specify the container information:
Image Specify a Docker image to use the template. The image tag is
required.
Command Specify a custom command to run the container.
Deploy Docker Containers with Templates
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 12 / 31
Hostname Assign a hostname to the container.
Network Specify the name of an existing Docker network.
Port mapping Map a host port (TCP/UDP) to a container port (TCP/UDP) for
communication.
Volume mapping Bind a shared folder to the container. The folder works as a
Docker volume and stores all data required and generated by
the container.
Restart policy Specify when to restart the container: Always, Unless stopped,
On failure, or None.
Privileged mode Enable this option to run the container in the privileged mode.
This mode allows the user to run commands that require high
permission in the container.
To use this mode, you must enable the interactive mode.
Interactive mode Enable this option to run the container in the foreground so that
the user can run commands in the container.
Memory
reservation
Reserve a custom amount of system memory to run the
container.
Memory limit Set an upper limit on the container ’s memory usage.
CPU limit Set an upper limit on the container ’s CPU usage.
5. Specify the environment variables by providing their names and default values.
6. Click Create the template to create a new template, or click Save as to save the modified template.
7. Return to the app store page to find the created template.
Deploy Docker Containers with Templates
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 13 / 31
Run Templates to Deploy Containers
After you selected an available Docker template in the app store, follow the steps to run the Docker
container with the specified execution environment settings.
1. On the app store page, click on a preferred Docker template.
2. Click Deploy the container.
3. The container image is then deployed on Docker and runs in the execution environment as
specified in the template.
Other Ways of Deploying Containers
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 14 / 31
Other Ways of Deploying Containers
In addition to deploying Docker containers with templates, Infortrend-powered Docker provides other
ways of container deployment.
Pull Container Images from a Docker Registry
Infortrend-powered Docker can link to both public and private Docker registries and download available
container images directly to the GSi storage device.
Note: To add other public or private Docker registries, go to Registries on the left panel and fill in
required login information.
1. Navigate to the left panel and click Images.
2. Go to the Registry menu and select a public or private registry to get Docker container images.
Infortrend-powered Docker has one predefined public registrie: DockerHub.
3. Enter a desired container image name in the Image field along with an identifying tag.
4. Click Pull the image to find and download a specified Docker container image.
5. The downloaded image appears in the Images section.
Other Ways of Deploying Containers
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 15 / 31
Import a Docker Container Image
You can import a ready-made Docker container image from your local computer and run it on
Infortrend-powered Docker.
1. Navigate to the left panel and click Images.
2. Go to the Images section and click Import.
3. Click Select file in the Upload section to choose a desired container image (.ifdk) to upload.
4. Then, go to the Actions section and click Upload to import the image to Docker.
5. The imported container image appears in the Images section.
Other Ways of Deploying Containers
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 16 / 31
Import a Docker Container Snapshot
A container snapshot records a specific running state of a container. By importing a container snapshot
from the GSi storage device, you can replicate the desired running state of the container for use.
1. Navigate to the left panel and click Images.
2. Go to the Images section and click Import.
3. Go to the Import a container snapshot section.
4. Select a folder on the GSi storage device from the Choose folder menu.
5. Then, go to the Choose file menu, and select a desired .idfk image snapshot in the selected
folder.
6. Go to the Actions section below and click Import.
7. The imported container snapshot appears in the Images section.
Other Ways of Deploying Containers
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 17 / 31
Build a Docker Container Image
You can create your custom container image.
1. Navigate to the left panel and click Images.
2. Go to the Images section and click Build a new image.
3. Go to the Builder tab, and enter one or multiple identifying names for the image file in the
name field.
4. Choose a method to build your image file:
Web editor Write or paste the instructions in your Dockerfile in this field.
Check the official documentation to know how to write Dockerfile
instructions.
Upload Click Select file and choose a tarball file or Dockerfile from your
local computer.
URL Enter a URL that links to a Dockerfile, a tarball file, or a public Git
repository.
If the URL is linked to a tarball file or a repository, enter the path
of the desired Dockerfile in the file/repository in the Dockerfile
path field.
5. Go to the Actions section below and click Build the image.
6. The built container image appears in the Images section.
Other Ways of Deploying Containers
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 18 / 31
Run Your Docker Container Image
After you imported or created a container image, follow the steps to run it.
1. Navigate to the left panel and click Containers.
2. Click Add container.
3. Go to the Image configuration section. Enter the name of a desired container image or container
snapshot in the Image section.
4. Click Deploy the container below in the Actions section.
5. The container then starts running on Infortrend-powered Docker.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 19 / 31
Use Cases
In this chapter, we will provide several examples for building up applications in Docker.
Nextcloud
Nextcloud is an open-source cloud drive application that can run on Docker. Nextcloud works similarly as
Dropbox and can be installed and operated on the user’s private server devices.
Scenario
You can create a cloud drive for your employees by setting up Nextcloud via the Docker platform
integrated to the Infortrend storage. Nextcloud works for personal computers and hand-held devices like
tablets and laptops, allowing for smooth and uninterrupted data access and cross-office collaboration.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 20 / 31
Setup and Usage
1. Go to Settings > Access > Channel & network to check if there is an available file-level channel.
2. Go to Settings > Applications > Docker and turn on Docker.
3. Select a file-level volume to run Docker. This volume is also used to run Nextcloud.
4. Click Save and then Launch Docker.
5. Provide the login credentials to enter the Docker management interface.
6. Click Images on the left panel.
7. Then, go to the Pull image section. Enter nextcloud:latest in the Image field, and select DockerHub
from the Registry menu.
8. Click Pull the image to pull the Nextcloud image from DockerHub.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 21 / 31
9. Click Containers on the left panel to set up a container for the Nextcloud image.
10. Enter the following values to the corresponding fields:
Name Specify Nextcloud.
Name
(in Image configuration)
Specify nextcloud:latest.
Port mapping Enter 20001 In the host field, and 80 in the container
field.
11. Click Deploy the container to launch Nextcloud.
12. To enter the Nextcloud management interface, enter the IP address in your browser or Nextcloud’s
client software:
NAS_IP_ADDRESS:20001
To access data via the local network, use the internal IP address; to access data via the Internet or a
remote network, use the WAN IP address.
13. After entering the management interface, create an administrator account. With the administrator
account , you can directly log in to Nextcloud next time.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 22 / 31
14. You can now start using Nextcloud with different clients, such as web browsers, desktop client
software, and mobile apps.
To download the Nextcloud’s developed client software, visit the official website:
https://nextcloud.com/
To view Nextcloud user documentation, visit this URL:
https://docs.nextcloud.com/server/15/admin_manual/
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 23 / 31
Veritas NetBackup Client
Veritas NetBackup Client leverages your existing NetBackup infrastructure to protect applications
deployed in containers.
Note: You must deploy Veritas NetBackup system in the data center first.
Scenario
You can use Veritas NetBackup Client to back up Docker containers and also the file-level volume used by
Docker on your Infortrend storage.
You may deploy Veritas NetBackup Client as below:
The deployment procedure is shown below.
For more information about Veritas NetBackup Client, check Docker Hub – Veritas NetBackup Client.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 24 / 31
MySQL
MySQL is well-known, high-performance, and open-source database software. MySQL also comes in a
Docker version so that you can deploy your database with it on Infortrend’s Docker platform.
Scenario
With the official Docker image, you can quickly deploy a MySQL database server on you Infortrend
storage without any extra cost to meet your budget concerns.
Setup and Usage
1. Go to Settings > Access > Channel & network to check if there is an available file-level channel.
2. Go to Settings > Applications > Docker and turn on Docker.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 25 / 31
3. Select a file-level volume to run Docker. This volume is also used to run MySQL.
4. Click Save and then Launch Docker.
5. Provide the login credentials to enter the Docker management interface.
6. Click App Store on the left panel.
7. To find MySQL, go to the top-right menu and choose Database, or enter mysql:latest in the
search field.
8. Click on MySQL to configure its settings:
9. Provide the values in the corresponding fields:
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 26 / 31
Name Specify mysql.
Root password Choose root.
Port mapping Enter 3306 in both the host and container fields.
Memory reservation
Memory limit
CPU limit
Make appropriate adjustments so that running the
MySQL container will not affect the storage performance.
10. Click Containers on the left panel and then select the mysql container.
11. Enter the command in the Command field:
mysql -u root –p
12. Click Connect.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 27 / 31
13. In the terminal, enter the root password to log in to the MySQL server. You can now start using it to
organize and manage your database.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 28 / 31
NGINX
NGINX is a powerful open-source web server software that can perform load balancing, HTTP caching,
and reverse proxy.
Scenario
You can deploy an NGINX web server on Infortrend’s Docker platform to provide web services without
additional costs.
Setup and Usage
1. Go to Settings > Access > Channel & network to check if there is an available file-level channel.
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 29 / 31
2. Go to Settings > Applications > Docker and turn on Docker.
3. Select a file-level volume to run Docker. This volume is also used to run NGINX.
4. Click Save and then Launch Docker.
5. Provide the login credentials to enter the Docker management interface.
6. Click App Store on the left panel.
7. To find NGINX, go to the top-right menu and choose Web Server, or enter nginx:latest in the search
field.
8. Click on NGINX to configure its settings:
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 30 / 31
9. Provide the values in the corresponding fields:
Name Specify nginx.
Port mapping Enter 8080 in both the host field, and then 80 in the
container field.
Memory reservation
Memory limit
CPU limit
Make appropriate adjustments so that running the
NGINX container will not affect the storage performance.
10. Click Deploy the container.
11. After the NGINX container is deployed, enter the IP address in your browser to enter the NGINX
management interface: NAS_IP_ADDRESS:8080
Use Cases
Copyright © 2019 Infortrend Technology, Inc. All rights reserved. Page 31 / 31
Conclusion Infortrend-powered Docker provides you with multiple methods to set up and run your Docker container
images on the GUI: using a predefined Docker template in the app store, creating a Docker template,
pulling a container image from a Docker registry, importing a container image/snapshot, and creating
your custom container image. These methods streamline your Docker deployment and, with the GUI
interface, improve your control over the execution environment settings.