home shape

ArangoDB Snapcraft Packaging: Simplified Deployment

ArangoDB Packaging

With ArangoDB 3.0 we reworked the build process to be based completely on cmake. The packaging was partly done using cpack (Windows, Mac), for the rest regular packaging scripts on the SuSE OBS were used. With ArangoDB 3.1 we reworked all packaging to be included in the ArangoDB Source code and use CPack. Users can now easily use that to build their own Packages from the source, as we do with Jenkins. Community member Artur Janke (@servusoft) contributed the new ubuntu snap packaging assisted by Michael Hall (@mhall119). Big thanks for that!

Download packages for Snap Ubuntu Core16.04

What are snaps

ubuntu-snapSnaps are a new way of packaging and deploying software on Ubuntu Core 16 and Linux in general. As one would expect from a Linux software distribution channel snap is both simple to install and quick to update.

Spoken simply, Snaps are like docker containers without docker. More precisely they share some concepts, and achieve similar results, but differ in other aspects.

  • Both use a system agent to administer the stack to deploy
  • Both use layered filesystems, so packages can derive from each others
  • Both offer automated distribution channels
  • Both offer working deployments on several linux distributions
  • While docker uses kernel namespaces to insulate processes into lightweight VMs, snap uses the Linux kernel AppArmor framework to manage access permissions on the system.
  • Docker uses complex virtual network interfaces and in-kernel routing to provide your app with network connectivity, snap manages access to the host systems network resources via AppArmor
  • You can also use snaps in docker containers
  • You could install docker on a host via snap

By providing ArangoDB as a snap, you get the ease of installation and updates that you would get from your distro’s own archives, while still getting the very latest versions directly from us. And because they are fully self-contained, you don’t need to worry about them breaking other software on your system, or other software interfering your ArangoDB install.

Installing the ArangoDB snap

If you’re running Ubuntu 16.04 or later you already have the ability to install Snap packages. For other distros, you will need to follow the installation instructions provided for your distro. Then installing ArangoDB becomes a simple sudo snap install arangodb3. If this is the first snap you’ve installed, you will see it also downloading the ubuntu-core package, this is the common runtime that all Snap packages use, and you will only need to install it once.

After installing the arangodb3 snap, the service will be running and ready for you to use! You can verify the service with systemctl status snap.arangodb3.arangod. You will also have all of the ArangoDB command-line tools available under /snap/bin/, including arangodump and arangosh, for managing your database.

The ArangoDB snap package stores your data in one of two locations. The database files themselves will be written to /var/snap/arangodb3/common/, including any Foxx services you install on your instance. Your log files and other meta data will be in /var/snap/arangodb3/current/.

Your arangodb snap will receive updates as often as we publish new, stable releases, there’s nothing you need to do to stay up to date. If at any time you want to remove this snap, just run sudo snap remove arangodb3, but be aware that this will delete your data files too, so be sure you’ve backed them up if you want to keep them!

If you’ve installed the snap on your local machine, you now can reach the ArangoDB web-interface via https://127.0.0.1:8529 or https://<your servers ip>:8529 :

arangodb-web-ui

You may download one of our example graph datasets and explore it with our new graph viewer:

aql-result-as-graph

More resources

Download the packages for Sap Ubuntu Core16.04.
Get started with ArangoDB by learning about the basic operations in the database: go through our 10 min CRUD tutorial (Create, Read, Update, Delete) or complete one of the tutorials for drivers in your language of choice.

Willi Goesgens avatar 1452092470 92x92

Willi Goesgens

Willi is part of ArangoDB Core team. He primarily works on performance tuning, the release process of ArangoDB and helping the community with his broad experience.

Leave a Comment





Get the latest tutorials, blog posts and news: