How to use Container Station 2?


Last modified date: 2022-11-15

About Container Station

Container Station integrates both LXD and Docker virtualization technologies. LXD enables you to run Linux virtual machines (including Ubuntu, Debian, and Fedora). Container Station also provides one-click deployment for many popular applications and frameworks.

Parts of the User Interface

The Container Station user interface has three main areas.

Label

Area

Description

1

Toolbar

The toolbar displays the following buttons:

  • How to Run LXD Containers?: Click to view the LXD container tutorial.

  • Background Tasks: Click to view the list of background tasks.

  • Settings: Click to configure the notification rules.

  • More: Click and then select one of the following:

    • Help: Opens the Container Station Help panel.

    • Download diagnostic report: Downloads the Container Station logs.

    • About: Displays the Container Station version.

2

Menu

The menu is divided into two sections.

Tip:

You can click or to collapse or expand the menu.

3

Main panel

The main panel displays the selected screen.

Images

Images are templates that contain a set of instructions for creating a container in Container Station.

The Images screen displays a list of images downloaded or imported into Container Station. You can view image properties such as type, version, ID, size, and creation date. You can also search for images by name, create containers from existing images, sync images with a designated registry, export images, and remove images.

Downloading an Image

If you pull an image before creating a container, Container Station displays information which you can use to configure the container later.

Note:

By default, Container Station uses the Docker Hub registry, but you can also add a new registry. For details, see Adding an Image Registry.

  1. On the menu, click Images.

    Container Station displays a list of available images.

  2. Click Pull.

    The Pull image from registry window appears.

  3. Specify the image settings.

    Setting

    Action

    Image Name

    Specify an image name that contains 1 – 128 characters, starts and ends with a letter or number, and only contains the following characters:

    • Letters: (a – z)

    • Numbers: 0 – 9

    • Special characters: hyphen (-), underscore (_), period (.), forward slash (/), or colon (:)

    Note:

    You cannot use consecutive hyphens (-), underscores (_), periods (.), forward slashes (/), or colons (:).

    Image Version

    Specify an image version that contains 1 – 128 characters, starts with a letter, number or underscore (_), and only contains the following characters:

    • Letters: (A – Z, a – z)

    • Numbers: 0 – 9

    • Special characters: hyphen (-), underscore (_), or period (.)

  4. Enable Set to default.
  5. Click Pull.

Container Station downloads the image from the registry.

Uploading an Image

  1. On the menu, click Images.

    Container Station displays a list of available images.

  2. Identify an existing image.
  3. Click in the Actions column.

    The Push image to a registry window opens.

  4. Select an existing registry.
    Tip:

    You can click Add to add a new registry. For details, see Adding an Image Registry.

  5. Specify an image name.
  6. Specify an image version.
  7. Click Push.

Container Station uploads the image to the remote location.

Exporting an Image

  1. On the menu, click Export.
  2. Click Export image.

    The Create Export Task window opens.

  3. Select an image from the list.
  4. Specify a file name for the exported image.
  5. Optional: Select Compress.
    Note:

    Selecting this option saves the image as a .tgz file.

  6. Specify a location to export the image.
  7. Click Export.

    Container Station exports the selected image.

Importing an Image

Container Station allows you to import existing images from a local computer or NAS. The supported formats are *.tar, .tar.gz, and *.tgz.

Important:

When importing a container, make sure the CPU architecture of the local device matches the remote device. For example, a container exported from a device with a 64-bit x86 CPU cannot be imported to a device with a 32-bit ARM CPU.

  1. Go to the Import screen.
  2. Click Import.

    The Create Import Task window opens.

  3. Locate the image on the local computer or on the NAS.

    Location

    Action

    Local device

    1. Click Local.

    2. Click Browse.

      A file explorer window opens.

    3. Select the image to import.

    4. Click Open.

    Local NAS

    1. Click NAS.

    2. Select the image to import.

  4. Click Next.

Container Station creates a new container based on the imported data. For details, see the following:

Removing an Image

Note:
  • You must remove any associated containers before you can remove an image.

  • This action does not remove the original image from any image registries.

  1. On the menu, click Images.

    Container Station displays a list of available images.

  2. Identify an existing image.
  3. Click in the Actions column.

    A confirmation window opens.

  4. Click Yes.

Container Station removes the image.

Volumes

Volumes store and retain data from a container and allow you to share this data outside the container.

The Volume screen displays a list of all the container volumes. It displays volume information such as driver, volume name, mount point, and label. You can prune all unused volumes, remove volumes from the list, and identify which containers are using specific volumes from this screen.

Viewing Volume Connections

  1. On the menu, click Volume.

    Container Station displays a list of available volumes.

  2. Identify an existing volume.
  3. Click .

Container Station opens a window that lists every container connected to the volume.

Removing all Unused Volumes

  1. On the menu, click Volume.

    Container Station displays a list of available volumes.

  2. Click Prune.

Container Station removes every unused volume.

Removing a Specific Volume

  1. On the menu, click Volume.

    Container Station displays a list of available volumes.

  2. Select one or more volumes.
  3. Click Remove.

Container Station removes the specified volumes.

Containers

Containers use OS-level virtualization to consolidate and standardize software in packages that can be easily shared between devices. A container image is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries, and settings.

Applications are multi-container resources created using Docker Compose. This is commonly used when a container may have dependencies and require other containers to function. To run applications, you can use a YAML file to describe components and configuration files.

The Container screen allows you to view the container list, perform actions on a container, and modify some container settings.

Create

Creating a Docker Container

Before creating a Docker container, you must install or import an image into Container Station. The Create screen contains a list of recommended container images or applications.

  1. On the menu, click Create.

    Container Station displays a list of containers.

  2. Create the container.

    Task

    Action

    Install a recommended container

    1. Identify a container in the list.

    2. Click Install.

    Search for an image

    1. Enter keywords in the search box.

    2. Click .

    3. Identify an image in the results.

    4. Click Install.

    Note:

    You can also search for previously imported images. See Downloading an Image.

  3. Optional: Configure the container settings.

    Setting

    Action

    Name

    Specify a container name that contains 2 – 64 characters, starts with a letter or number, and only contains the following characters:

    • Letters: (A – Z, a – z)

    • Numbers: 0 – 9

    • Special characters: hyphen (-), underscore (_), or period (.)

    Command

    Specify the command line program.

    Entrypoint

    Specify an entry point.

    Runtime

    Select a runtime to spawn and run the container.

    • runc is the default command line tool for spawning and running containers according to the Open Container Initiative (OCI) specification for Docker containers.

    • kata-runtime is a secure open source container runtime, capable of building lightweight virtual machines that perform like containers. It can provide stronger workload isolation using hardware virtualization technology as an added layer of defense.

    Note:

    Using the kata runtime requires at least 1 CPU resource and at least 512 MB of memory.

    There are several limitations to using the Kata runtime.

    • Modifications to the Kata VM configuration are not allowed

    • Network host mode is unsupported

    • Privileged mode is unsupported

    • GPU connections are unsupported

    • Changes to the kernel or base rootfs (initrd image) are unsupported

    For additional information, see How many Kata containers can I run on my QNAP device.

    Auto-start

    Configure the container to start automatically.

    CPU Limit

    Specify a maximum limit on CPU usage

    • runc: Specify a percentage limit between 10% - 100%.

    • kata-runtime: Select a specific number of CPU threads. The maximum CPU limit depends on your specific CPU.

    Memory Limit

    Specify a maximum limit on memory usage

    • runc: Specify a limit of at least 64 MB.

    • kata-runtime: Specify a limit of at least 512 MB.

    Note:

    The maximum memory limit depends on your specific device.

  4. Optional: Modify the advanced settings.
    1. Click Advanced Settings.

      The Advanced Settings section appears.

    2. From the Environment tab, perform any required actions.

      Task

      Action

      Add an environment variable

      1. Click Add.

        Container Station adds a blank variable row.

      2. Enter a name for the variable.

      3. Enter a value for the variable.

      Edit an environment variable

      1. Identify an existing variable.

      2. Modify the variable name or value.

      Delete an environment variable

      1. Identify an existing variable.

      2. Click .

    3. From the Network tab, specify the container hostname, MAC address, network mode, and any port forwarding information.

      Task

      Action

      Add a port

      1. Click Add.

        Container Station adds a blank port forwarding row.

      2. Specify the host port

      3. Specify the container port

      4. Specify the host port

      Edit a port

      1. Identify an existing port.

      2. Modify the host port number, container port number, or networking protocol.

      Remove a port

      1. Identify an existing port.

      2. Click .

    4. From the Device tab, configure read and write permissions, enable interactive and TTY process, or enable privileged mode.

      Task

      Action

      Add a device

      1. Click Add.

        Container Station adds a blank device row.

      2. Select an available device.

      3. Select a permission.

      Edit a device

      1. Identify an existing device.

      2. Modify the device or permission settings.

      Remove a device

      1. Identify an existing device.

      2. Click .

      Enabled interactive and TTY container processes

      1. Select Allocate interactive and TTY processes for the container.

      Enable privileged mode

      1. Select Run containers in privileged mode.

      Note:

      You cannot enable privileged mode for containers configured to use the kata-runtime.

    5. Modify the Shared Folders settings.

      Task

      Action

      Add a volume

      1. Above the Volume from host table, click Add.

        Container Station adds a blank volume row.

      2. Enter a name to identify the volume.

      3. Specify a mount point within the container.

      Add a host volume

      1. Above the Volume from container table, click Add.

        Container Station adds a blank volume row.

      2. Specify a NAS location from the Host Path field.

      3. Specify a mount point within the container.

      4. Select an access permission for the volume.

      Add a container volume

      1. Above the New volume table, click Add.

        Container Station adds a blank volume row.

      2. Select an existing container.

      3. Select an access permission for the volume.

      Edit a volume

      1. Identify an existing volume.

      2. Edit the available fields or permission settings.

      Remove a volume

      1. Identify an existing volume.

      2. Click .

  5. Click Create.

    The Summary screen displays.

  6. Review the container settings and then click OK.

    Container Station creates the container.

Creating an LXD Container

Before creating a LXD container, you must install or import an image into Container Station. The Create screen contains a list of recommended container images or applications.

Note:
  1. On the menu, click Create.

    Container Station displays a list of containers.

  2. Search for the container.
    1. Enter keywords in the search box.
    2. Click .
    3. Go to the LXD Image Server tab.
    4. Identify an image in the results.
    5. Click Install.
  3. Optional: Configure the container settings.

    Setting

    Action

    Name

    Specify a container name that contains 1 – 63 characters, starts with a letter, ends with a letter or number, and only contains the following characters:

    • Letters: (A – Z, a – z)

    • Numbers: 0 – 9

    • Special characters: hyphen (-)

    Auto Start

    Configure the container to start automatically.

    CPU Limit

    Specify a maximum limit on CPU usage

    Note:

    The CPU limit must be between 10% - 100%.

    Memory Limit

    Specify a maximum limit on memory usage

    Note:

    The memory limits depend on your specific device.

  4. Optional: Modify the advanced settings.
    1. Click Advanced Settings.

      The Advanced Settings section appears.

    2. From the Network tab, specify the container hostname, MAC address, network mode, and any port forwarding information.

      Task

      Action

      Add a port

      1. Click Add.

        Container Station adds a blank port forwarding row.

      2. Specify the host port

      3. Specify the container port

      4. Specify the host port

      Edit a port

      1. Identify an existing port.

      2. Modify the host port number, container port number, or networking protocol.

      Remove a port

      1. Identify an existing port.

      2. Click .

    3. From the Device tab, configure read and write permissions or enable privileged mode.

      Task

      Action

      Add a device

      1. Click Add.

        Container Station adds a blank device row.

      2. Select an available device.

      3. Select a permission.

      Edit a device

      1. Identify an existing device.

      2. Modify the device or permission settings.

      Remove a device

      1. Identify an existing device.

      2. Click .

      Enable privileged mode

      1. Select Run containers in privileged mode.

      Note:

      If Advanced Folder Permissions are enabled in the Control Panel, privileged mode must be enabled for the container.

    4. Modify the Shared Folders settings.

      Task

       

      Add a volume

      1. Above the Volume from host table, click Add.

        Container Station adds a blank volume row.

      2. Enter a name to identify the volume.

      3. Specify a mount point within the container.

      Edit a volume

      1. Identify an existing volume.

      2. Edit the available fields or permission settings.

      Remove a volume

      1. Identify an existing volume.

      2. Click .

  5. Click Create.

    The Summary screen displays.

  6. Review the container settings and then click OK.

    Container Station creates the LXD container.

Creating a Container from an Existing Image

  1. On the menu, click Images.

    Container Station displays a list of available images.

  2. Identify an existing image.
  3. Click in the Actions column.

Container Station creates the container. For details, see Creating a Docker Container.

Creating an Application

Applications are multi-container resources created using Docker Compose. This is commonly used when a container may have dependencies and require other containers to function. To run applications, you can use a YAML file to describe components and configuration files.

  1. On the menu, click Create.

    The Create screen displays.

  2. Click Create Application.

    The Create Application window opens.

  3. Configure the application settings.
    1. Specify the application name.
    2. Enter the Docker Compose YAML.

      For details, see https://docs.docker.com/compose/.

      Tip:

      You can select and view YAML samples from the Sample drop-down list.

  4. Optional: Click Validate YAML to verify if the code is correct.

    Container Station validates the YAML and highlights any formatting errors.

  5. Click Create.

    Container Station creates the Docker Compose application.

Container Information

To access the container information screen go to the Container tab, and click the name of an existing container. This screen has four main areas.

Label

Area

Description

1

Container name

Displays the container type.

Tip:

If using the kata runtime, a kata icon is displayed here.

2

Action buttons

Displays the different buttons that can be used to perform an action on the container

3

Container details

Displays the following information:

  • Status: Displays one of the following statuses.

    • Running

    • Stopped

  • URL: Displays the URL forwarding information.

  • Image: Displays the image name and version number

  • ID: Displays the container ID

  • ENTRYPOINT: Specifies commands that run when the container starts.

  • CPU: Displays the percentage of CPU usage

  • Application: Displays the project name specified in the docker-compose.yml file

  • Command: Displays the CMD instruction

  • Memory: Displays the percentage of RAM usage

  • Network usage: Displays the bandwidth consumption

Note:

Depending on the container settings, some fields may be empty.

Exporting a Container

Exporting a container allows you to move information between devices. You cannot export an application as a single file, but you can individually export each container inside of the application.

Important:

To avoid data loss, QNAP recommends stopping a container before starting the export process.

  1. On the menu, click Export.
  2. Click Export container.

    The Create Export Task window opens.

  3. Select a container from the list.
  4. Specify the file name for the exported container.
  5. Optional: Select Compress.
    Note:

    Selecting this option saves the container as a .tgz file.

  6. Specify a location to export the container.
  7. Click Export.

    Container Station exports the selected container.

Importing a Container

Container Station allows you to import existing containers from a local computer or NAS. The supported formats are *.tar, .tar.gz, and *.tgz.

Important:

When importing a container, make sure the CPU architecture of the local device matches the remote device. For example, a container exported from a device with a 64-bit x86 CPU cannot be imported to a device with a 32-bit ARM CPU.

  1. Go to the Import screen.
  2. Click Import.

    The Create Import Task window opens.

  3. Locate the container on the local computer or on the NAS.

    Location

    Action

    Local device

    1. Click Local.

    2. Click Browse.

      A file explorer window opens.

    3. Select the container to import.

    4. Click Open.

    Local NAS

    1. Click NAS.

    2. Select the container to import.

  4. Click Next.

Container Station creates a new container based on the imported data. For details, see the following:

Starting a Container

  1. On the menu, click Container.

    Container Station displays a list of available containers and applications.

  2. Select one or more containers.
  3. Click Start.

Container Station starts the selected containers.

Duplicating a Container

  1. On the menu, click Container.

    Container Station displays a list of available containers and applications.

  2. Identify a container and click the container name.

    The container information screen opens.

  3. Click More > Duplicate

Container Station duplicates the container. For details, see Creating a Docker Container or Creating an LXD Container.

Creating an Image from a Container

This topic explains how to create an image from an existing Docker or LXD container.

  1. On the menu, click Container.

    Container Station displays a list of available containers and applications.

  2. Identify a container and click the container name.

    The container information screen opens.

  3. Click More > Create Image

    The Create Image from Container window opens.

  4. Specify the image settings.

    Setting

    Action

    Image Name

    Specify an image name that contains 1 – 128 characters, starts and ends with a letter or number, and only contains the following characters:

    • Letters: (a – z)

    • Numbers: 0 – 9

    • Special characters: hyphen (-), underscore (_), period (.), forward slash (/), or colon (:)

    Note:

    You cannot use consecutive hyphens (-), underscores (_), periods (.), forward slashes (/), or colons (:).

    Image Version

    Specify an image version that contains 1 – 128 characters, starts with a letter, number or underscore (_), and only contains the following characters:

    • Letters: (A – Z, a – z)

    • Numbers: 0 – 9

    • Special characters: hyphen (-), underscore (_), period (.)

  5. Click Create Image.

Container Station creates a new image.

Stopping a Container

  1. On the menu, click Container.

    Container Station displays a list of available containers and applications.

  2. Select one or more containers.
  3. Click Stop.

Container Station stops all running processes on the selected containers. Stopped containers remain listed in Container Station until they are removed.

Restarting a Container

Tip:

You can manually restart unresponsive containers.

  1. On the menu, click Container.

    Container Station displays a list of available containers and applications.

  2. Select one or more containers.
  3. Click Restart.

Container Station restarts the selected containers.

Removing a Container

  1. On the menu, click Container.

    Container Station displays a list of available containers and applications.

  2. Select one or more containers.
  3. Click Remove.

Container Station removes the selected containers.

Executing a Container Terminal Command

Container Station allows you to run terminal commands on a running container.

The command line terminal allows you to more easily check logs and statuses, and perform actions without using a web server.

  1. On the menu, click Container.

    Container Station displays a list of available containers and applications.

  2. Identify a container.
  3. In the Actions column, click .

    The Execute window opens.

  4. Enter a command.
  5. Click Connect.

Container Station opens a new browser window with the output from the command.

Editing an Application YAML File

Container Station allows you to combine multiple containers into an application using Docker Compose. For more information, see Docker Compose.

  1. On the menu, click Container.

    Container Station displays a list of available containers and applications.

  2. Identify a container.
  3. In the Actions column, click .

    The Edit Application window opens.

  4. Edit the Docker Compose YAML.
  5. Optional: Click Validate YAML to verify if the code is correct.

    Container Station validates the changes to the file and highlights any formatting errors.

  6. Click Apply.

Container Station saves the Docker Compose file.

Logs

Container Station logs actions that are performed inside the application. You can view and filter the logs, and download a copy in a CSV file.

You can perform the following tasks:

Task

Action

Filter the logs

Click beside a column heading and then perform any of the following steps, as needed.

  • Deselect attributes to hide related entries.

  • Specify a date range.

  • Enter a keyword to display matching entries.

Clear any existing filters to display all logs

Click Reset Filter.

Download the logs as a CSV file

Click Download.

Preferences

Managing Network Settings

The Network Settings section allows you to configure the range of available IP addresses for containers to use. There are three available bridge networks you can configure:

  • lxcbr0: Provides network access for Docker containers.

  • lxdbr0: Provides network access for LXD containers.

  • docker0: Provides network access for containers of dependent applications.

  1. On the menu, click Preferences.
  2. Go to Network Settings.
  3. Identify a bridge network from the left panel.
  4. Configure the network settings.

    Setting

    Action

    IP Address / Network

    Enter the IP address and CIDR to identify a range of IP addresses.

    Primary DNS Server

    Enter the IP address for a DNS server.

    Secondary DNS Server

    Optional: Enter the IP address for a backup DNS server.

  5. Click Apply.

Container Station saves the network settings. You must restart Container Station for the changes to the network to take effect.

Tip:

To reset the network settings, click Reset to default.

Adding an Image Registry

  1. On the menu, click Preferences.
  2. Go to Registry.
  3. Click Add.

    The Add Registry window opens.

  4. Configure the registry.

    Setting

    Action

    Name

    Enter a name to identify the registry.

    URL

    Enter the URL used to access the registry.

    Username

    Optional: Enter the account name used to access the registry.

    Password

    Optional: Enter the password for the related account.

    Trust SSL Self-Signed certificate

    Select to use SSL when connecting to this registry.

    Set to default

    Select to use this as the default registry when searching for images.

  5. Optional: Click Test.

    Container Station tests the connection.

  6. Click Add.

Container Station adds the image registry.

Configuring the Application Repository

The application repository controls the containers and applications displayed on the Create screen. By default, QNAP provides a list of common containers, but you can use a customized list from a GitHub repository instead.

  1. On the menu, click Preferences.
  2. Go to Application Repository.
  3. Select Custom.
  4. Specify the repo information.
    1. Specify the GitHub account name.
    2. Specify the GitHub repo name.
    3. Specify any branch information.
  5. Click Apply.

Container Station configures the application repository.

Downloading the Docker Certificate

A Docker certificate ensures a secure connection when accessing the Container Station Docker service from another device.

Important:

You must enable port forwarding on Docker (port: 2376) and your NAS (default port: 8080, 443).

Tip:

To manually renew the Docker certificate, click Renew. Renewing the Docker certificate automatically restart all the Docker containers.

  1. On the menu, click Preferences.
  2. Go to Docker Certificate.
  3. Optional: Configure domain name information.
    1. If using a specific domain name (such as myQNAPcloud) for remote access, enter it in the Domain name field.
    2. Click Apply.
  4. Click Download.

    Container Station prepares the Docker certificate for download.

  5. On your device, unzip the Docker certificate file and run the command from the Set Environment field.

Managing Kubernetes in Container Station

Container Station includes a standalone lightweight K3s cluster and the official Kubernetes web UI (Dashboard). The K3s server is an un-configurable single-node cluster that runs locally within the Docker instance. Enabling Kubernetes allows you to deploy workloads in parallel on Kubernetes and as standalone containers.

Note:
  • The default Kubernetes API server port is 6443.

  • The available Kubernetes web UI ports are between 61000 and 62000.

  • A default admin-user account is created for Kubernetes web UI management. This account is granted administrative privileges during Kubernetes deployment.

There are several limitations to using Kubernetes in Container Station:

Area

Limitations

General

  • Modifications to the K3s cluster configuration are not allowed.

  • Adding additional nodes is not allowed.

Networking

  • LoadBalancer services are supported on firmware 5.0.1 and later.

  • Ingress is unsupported.

Storage

  • iSCSI volumes and relevant CSI plugins are unsupported.

Security

  • Direct shared folder access from a K3s instance is unsupported.

Advanced

  • Resource backup and restore is unsupported.

  • Adding additional SANs (Subject Alternative Name) is unsupported.

  1. On the menu, click Preferences.
  2. Go to Kubernetes.
  3. Select Enable K3s.
  4. Optional: Select Deploy Kubernetes web UI (Dashboard).
  5. Optional: Select Display Kubernetes system containers.
    Note:

    When enabled, Kubernetes internal containers are displayed when using Docker commands.

  6. Click Apply.

    Container Station enables the Kubernetes node.

  7. You can perform the following Kubernetes tasks.

    Task

    Action

    Reset Kubernetes

    Click Reset Kubernetes Cluster to reset the clusters and deletes all Kubernetes resources.

    Download the kubeconfig file

    Click kubeconfig.yaml to download the kubeconfig file of the Kubernetes cluster.

    Copy the bearer token

    • Click Kubernetes bearer token.

      The Default Bearer Token window appears.

    • Click Copy.

      The token is copied to the clipboard.

    • Click Close.

    Access the Kubernetes Dashboard

    • Click the Dashboard URL.

      The Kubernetes Dashboard opens in a new tab.

    • Select from the following:

      • Token: Select to enter the copied bearer token

      • Kubeconfig: Select to upload the downloaded kubeconfig YAML file

    • Click Sign in.

      The Kubernetes Workloads page appears.

Was this article helpful?

43% of people think it helps.
Thank you for your feedback.

Please tell us how this article can be improved:

If you want to provide additional feedback, please include it below.

Choose specification

      Show more Less

      Choose Your Country or Region

      back to top