Configuring Docker containers in the OwnCloud cloud
Complex Scenarios with Fig and Vagrant
Many development and test environments consist of more than one service, which sometimes requires a complex configuration or a connection to other services. Although you can easily define images with Dockerfiles, executing them sometimes requires custom scripts and long command lines so that the links between different container volumes work properly.
Luckily, provisioning tools like Fig configure the individual containers with the parameters provided by a configuration file in YAML format [5]. The instances are then provisioned and managed using the fig
command-line tool [6]. Listing 8 shows the configuration for the OwnCloud scenario; Listing 9 shows the directory tree of the configuration files – just as a reminder.
Listing 8
fig.yml for the OwnCloud Scenario
Listing 9
OwnCloud Directory
Fig is similar to the popular deployment tool Vagrant [7], but it is specifically tailored for Docker. For example, the fig up
command would build the images in the mysql
and httpd
folders on the basis of the given fig.yml
file, if they do not already exist, and then start the containers with the defined parameters.
Access should be possible via http://$host-ip/owncloud. Figure 3 shows the OwnCloud setup routine given a correct configuration of the installation. Fig renames the images following a pattern of main_directory_container-name
. In this example, the build with fig build
would result in two images named owncloud_database
and owncloud_httpd
.
The container itself uses the image name with a serial number as a suffix. If a horizontally scalable application exists in the container, the admin can also use the fig scale
command to define how many containers of one type (e.g., httpd
) Docker starts. As in docker run -d
, fig up -d
can start the entire environment in the background. The cleanup command team comprises fig kill
and fig rm
.
Conclusion
The Docker container system is getting lots of coverage in the press, but if you decide to implement Docker for your own cloud configuration, you'll need more than headlines. In this article, we offered a glimpse at the practical side of deploying Docker in a cloud environment – in this case, the OwnCloud environment. The details for configuring Docker for other clouds are similar. See the article on the CoreOS Linux system, which is designed to support Docker configurations, elsewhere in this issue.
Infos
- Docker: https://www.docker.com/
- Docker-Builder reference: http://docs.docker.com/reference/builder/
- Docker best practices: http://crosbymichael.com/dockerfile-best-practices.html
- Owncloud: http://owncloud.org
- YAML: http://www.yaml.org
- Fig https://orchardup.github.io/fig/
- Vagrant http://www.vagrantup.com/
« Previous 1 2 3
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Budgie 10.10 Scheduled for Q1 2025 with a Surprising Desktop Update
If Budgie is your desktop environment of choice, 2025 is going to be a great year for you.
-
Firefox 134 Offers Improvements for Linux Version
Fans of Linux and Firefox rejoice, as there's a new version available that includes some handy updates.
-
Serpent OS Arrives with a New Alpha Release
After months of silence, Ikey Doherty has released a new alpha for his Serpent OS.
-
HashiCorp Cofounder Unveils Ghostty, a Linux Terminal App
Ghostty is a new Linux terminal app that's fast, feature-rich, and offers a platform-native GUI while remaining cross-platform.
-
Fedora Asahi Remix 41 Available for Apple Silicon
If you have an Apple Silicon Mac and you're hoping to install Fedora, you're in luck because the latest release supports the M1 and M2 chips.
-
Systemd Fixes Bug While Facing New Challenger in GNU Shepherd
The systemd developers have fixed a really nasty bug amid the release of the new GNU Shepherd init system.
-
AlmaLinux 10.0 Beta Released
The AlmaLinux OS Foundation has announced the availability of AlmaLinux 10.0 Beta ("Purple Lion") for all supported devices with significant changes.
-
Gnome 47.2 Now Available
Gnome 47.2 is now available for general use but don't expect much in the way of newness, as this is all about improvements and bug fixes.
-
Latest Cinnamon Desktop Releases with a Bold New Look
Just in time for the holidays, the developer of the Cinnamon desktop has shipped a new release to help spice up your eggnog with new features and a new look.
-
Armbian 24.11 Released with Expanded Hardware Support
If you've been waiting for Armbian to support OrangePi 5 Max and Radxa ROCK 5B+, the wait is over.