Setting up Nextcloud with Podman

Setup

The setup described here works fine for using Nextcloud on your home network. In this simple scenario, all the containers run in a single pod. If you want to access the pod from outside your home network, you will need additional containers. TLS encryption for security purposes can be implemented via the Traefik proxy, using HTTPD, NGINX, or Caddy, among others.

If you include Podman as a systemd service, you can simplify image updates via podman auto-update [9] by additionally specifying label=io.containers.autoupdate=image and using

podman generate systemd --new

when creating a container. After completing the preliminary work, call Nextcloud in your browser on localhost:8080 and complete the installation there in the usual way (Figure 4). The paths to the three most important configuration files for Podman can be found in Listing 4.

Listing 4

Podman Configuration

/usr/share/containers/containers.conf
/etc/containers/containers.conf
$HOME/.config/containers/containers.conf
Figure 4: If everything goes according to plan, you can complete the Nextcloud installation in your browser. It's hard to imagine rolling out Nextcloud faster.

As mentioned, you can manage Podman at the command line or via the Cockpit administration interface, which you install with the cockpit-podman package. Then call Cockpit on localhost:9090/podman in your browser (Figure 5). The web interface gives you the ability to inspect (Figure 6) and manage (Figure 7) your images and containers.

Figure 5: Embedding Podman in Cockpit makes it easier to set up the containers. This starts with downloading the required image from the Docker registry.
Figure 6: After downloading the images, create the containers that will host the applications.
Figure 7: You can check the status of the containers against specified criteria at any time.

Conclusions

The Podman man page [10] offers a useful initial overview of Podman's features, while the Podman website [1] provides a variety of references for further research. In my opinion, you can learn the Podman basics more quickly than Docker. If you already have experience with Docker, you will certainly find the transition to Podman easy. To jog muscle memory in this case, enter

alias docker='podman'

in your .bashrc to continue using Docker commands such as pull, push, build, commit, tag, and more.

I did not find any drawbacks compared to Docker during testing. Podman's biggest benefit is improved security due to eliminating the need to be root. In addition, simple administration through integration with Cockpit is a plus. Podman is well on its way to replacing Docker, although there are still some teething issues to be aware of, especially when you are working with remote machines. The simple introduction described here is a good starting place if you are looking to expand your own container skills.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
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.

Learn More

News