On the user's main Pods page click Add new container to start creating a container. The process takes 4 steps:



Change pod name if you need.




Then the process takes 4 steps:



1. Choose Image. Find Docker container image by entering its name (or part of the  name) in search line and click on magnifier sign or press Enter to view search results.


In the search results you will get :


The list of ready to use application out of the box created and configured by our team. If you choose ready to use application you will be redirected to the page where you are able to choose resource plan for it.

The list of docker images from selected registry (read about it below).


If you don’t know the name of docker container image, try typing application name, like wordpress, mysql, redis, etc., and click “Enter” or magnifier and KuberDock will show you the list of potential container images that you can use)


Click Select in front of the image or application to start setting up its configuration or choose resource plan. By default, you are searching Docker Hub container image registry.




You can view detailed information on proper container image by clicking on Learn more... in image description.


To choose docker container image from private repository, choose Docker Hub/private repo from Search from directories drop-down menu:




Enter Username and Password, specify namespace and image separated by slash symbol (/) and click Select.




To search for docker container image in other repositories, choose Other registries in drop-down menu, enter login and password and specify path to the image in the following form:


“registry/namespace/image” ,


where registry - domain address,


for instance: “your_registry.com/my_namespace/my_image_name”,


and click Select.




2. Set up Image. On the second step set up Docker image configuration:


2.1 Specify Command to customize command to run inside a container when it starts. Use space to separate parameters as you would typically do in shell. For example, redis --conf /etc/redis.conf




2.2 Set up Ports. In Ports section define which ports of your container should be exposed. Click Add port and specify Container port (this is an internal port in container which needs to be exposed. Read more about container port usage in the schema in Introduction section) and Protocol. By default, when you create a container port, a pod port with the same number is being created.


If you need a port to be accessible from an external IP addresses or Service address, tick Public checkbox. In such case, you will be required to

choose public access type — Public IP or Domain:



Note that only ports marked as Public are accessible from outside of the cluster.


Selecting Public IP you determine that the pod will be exposed outward by dedicated IP address: public_IP:pod_port.


Selecting Domain you make the pod externally accessed by its service address: domain_name:pod_port (only port 80 for HTTP and port 443 for HTTPS can be used). Note that name-accessed pods aren’t charged for the public IP addresses.


Pod port - is external port of a container used to access container port from using external IP or from other ports. Containers within the same pod can access the port using localhost IP By default Pod port equals Container port. Use the following addresses to access the container:


from other pods: pod_ip:pod_port;

from external IP: public_ip:pod_port or domain_name:pod_port;

from containers within the same pod:


Specify port number in Pod port to redefine default values. KuberDock will redirect traffic from Pod port to container port.


Note that Public IP usually costs extra fee, we recommend to use it only if you need it.




To complete creation of the name-accessed pod you should select a domain from the drop-down list appearing upon the Domain selection:


Standard domain - the default domain of your hosting provider.


Specific domain - additional available domains that can be used only for 80 and 443 ports. This type of domain has a more beautiful name then standard domain.




The name of the pod will be composed automatically according to the following pattern:




For example, if user jdoe chooses the dreamhosting.com domain for his/her pod wpinovado, then the access point will look as follows: jdoe-wpinovado.dreamhosting.com.


All you need to get to the name-accessed pod externally is to enter its name in the address bar of a browser http://<username>-<podname>.<selecteddomain> or https://<username>-<podname>.<selecteddomain>


Note. Please be aware that full pod domain name limited to 64 symbols.


2.3 Set up Volumes. To add a volume click Add volume and specify its location path in Path field. Use checkbox Container (not persistent) or Persistent (will persist when container is restarted). Data in Persistent volume will be saved after container is restarted or even removed.




Tick Persistent checkbox and begin to type the name of persistent storage. Choose one of persistent storages you have created from Select Persistent Disk drop-down menu or create new persistent:




To cancel click recycle bin icon.


Note that in dropdown you will see all existing persistent disks and used ones would have text “busy” in parentheses:




Note, that the additional fees will be charged by a provider for using persistent storage. You can use one persistent storage for several pods during a payed period of it, but only one pod can use the same persistent storage at one time. It is possible to edit pod and remove persistent storage from it and then edit or create another pod with the same persistent storage.


Click Next to proceed to the next step.


3. Environment variables. Here you can specify and manage environment variables for this container. Enter variable Name and Value in appropriate fields and click Next to go to the final step of setting up a container.


Note that some docker container images require specific environment variables for container to work correctly. Click Learn more about variables for this image to view detailed information on docker image in Docker hub.


Click Reset values, if you need to return variables to default values. Note that in this case all the changes made on this step will be reset.




4. Final setup. On this step:


4.1 Choose “Restart policy” from drop-down menu.




4.2 Choose Kube type* for container from drop down menu. If any Kube Type is shown in grey, then this Kube Tybe is curently unavailable.




4.3 Choose number of Kubes for this container to define amount of resources allocated for the container.




Note that container’s resource capacity will be depicted on the page and will be updated automatically accordingly with the chosen Kube type and Kube quantity:




Price specified in Total price section is based on resource usage allocation. For example, if you have chosen 5 Kubes, then the cost is calculated as price for one Kube multiplied by 5. The price is specified as total workload with all the options selected.




Click Back to return to the previous step, click Add more containers to add another container to this pod, click Save to save pod configuration and its containers for later use (the containers will be displayed on Pod page with the status “unpaid”), or click Pay And Start to pay for this pod and launch it.


Note that after clicking Pay And Start you will be charged automatically and redirected to Pod page. If on some reason payment will not succeed, then you will be redirected to billing system of your hosting provider to pay for the pod and start after successful payment.




To remove container image from the list click Remove (recycle bin icon) in front of it:




To change container image settings, click Edit (pencil icon):




You will get back to the second step of Creating a Container and will need to complete the second and third steps again.



*Note that if you add two or more containers to one pod and change Kube type on the final step, then this Kube type will be reassigned for all containers in the pod and total cost will be recalculated.