Skip to main content

Overview

The Object Store panel under Project → Object Store → Containers provides a browser-based interface to Swift object storage. This is a scalable, replicated system for storing unstructured data such as static assets, backups, log archives, and media files.
Prerequisites
  • member role in the active project
  • Object Storage service enabled on your Xloud deployment
  • Storage quota available (check with Project → Object Store → Containers header stats)

Container Operations

Create a Container

Open the container panel

Navigate to Project → Object Store → Containers and click + Container.

Configure the container

FieldDescription
Container NameUnique name within your project (no spaces, use hyphens)
Container AccessNot public (private) or Public (world-readable via temp URL or direct)

Create

Click Submit. The container appears in the left panel immediately.
Container names must be globally unique within the Swift cluster. Use project-prefixed names (e.g., myproject-backups) to avoid collisions.

Upload Objects

Select the container

Click the container name in the left panel to view its contents.

Upload files

Click the Upload File button (arrow icon). Select one or more files from your local machine.For files larger than 5 GB, use the CLI with segmented (multipart) upload:
Upload large file with segmentation
openstack object create --segment-size 1073741824 my-container large-file.tar.gz

Organize with pseudo-folders

Click + Folder to create a pseudo-folder (a path prefix). Objects uploaded inside the folder are named with the prefix (e.g., backups/2025-01/database.tar.gz).
Swift has no real directory hierarchy — folders are just name prefixes. The Dashboard renders them as folders for usability, but they don’t consume storage themselves.

Download and Delete Objects

ActionHow
DownloadClick the download icon in the object row or open Actions → Download
Delete objectOpen Actions → Delete Object — irreversible
Delete containerContainer must be empty first. Open container Actions → Delete Container
Object and container deletion is immediate and irreversible. Ensure you have a backup or the data is no longer needed before deleting.

Access Control

By default, containers and objects are private — accessible only to users in your project with valid tokens.
Set a container to Public during creation, or change it via:
Make container public
openstack container set --property "X-Container-Read: .r:*" my-container
Public containers allow unauthenticated read access. Objects are accessible via their direct URL:
https://object.<your-domain>/v1/<project-id>/my-container/object.txt
Public containers expose all objects to anyone with the URL. Do not store sensitive data in public containers.

Object Versioning

Enable versioning to preserve previous versions of objects when overwritten.
Enable object versioning
openstack container set \
  --property "X-Versions-Location: my-container-versions" \
  my-container
When an object in my-container is overwritten, the previous version is automatically saved to my-container-versions. The Dashboard does not expose versioning controls — use the CLI for version management.

Next Steps

Object Storage User Guide

Full Swift documentation including large objects and replication

Temp URLs

Generate pre-signed URLs for secure external sharing

Access Control

ACLs, read/write policies, and public containers

Object Versioning

Preserve and restore previous object versions