Docker Image
This Docker image provides an easy way to run an OpenIO namespace. It deploys and configure a simple non-replicated namespace in a single container.
OpenIO SDS service discovery and resolution relies on IP addresses, meaning that you can’t change service IPs after they have been registered to the cluster. By default, Docker networking may change you IP when your container restarts, and this is not compatible with OpenIO SDS at the moment.
Deploy
First, download the OpenIO Docker image from the Docker Hub:
# docker pull openio/sds
By default, start a simple namespace listening on 127.0.0.1 inside the container using docker run:
# docker run -ti --tty openio/sds
You can now manipulate your namespace inside your container using the OpenIO End User CLI. For example, put an object :
# echo 'Hello OpenIO!' > test.txt
# openio object create MY_CONTAINER test.txt --oio-ns OPENIO --oio-account MYACCOUNT
Deploy the S3/Swift Gateway
You can launch the OpenIO docker image with our S3 and Swift gateway embedded, and map its port (6007) to access to it remotely.
Launching the container with port mapping:
# docker run -ti --tty -p 127.0.0.1:6007:6007 openio/sds
The S3 and Swift gateway is now accessible on 127.0.0.1:6007.
Using Swift gateway
First install python-swiftclient:
# yum install python-swiftclient
Then you can use the swift APIs:
# swift -A http://127.0.0.1:6007/auth/v1.0/ -U demo:demo -K DEMO_PASS stat
Using S3 gateway
First install awscli:
# yum install awscli
Then, set your credentials in the following configuration file ~/.aws/credentials:
[default]
aws_access_key_id=demo:demo
aws_secret_access_key=DEMO_PASS
region=US
s3 =
signature_version = s3
Finally you can put your first object:
# aws --endpoint-url http://127.0.0.1:6007 --no-verify-ssl s3 cp /etc/localtime s3://bucket1
Using the host network interface
You can start an instance using Docker host mode networking. This allows you to access services outside your container. You can specify the interface or the IP address you want to use.
Setting the interface:
# docker run -ti --tty -e OPENIO_IFDEV=enp0s8 --net=host openio/sds
Specifying the IP:
# docker run -ti --tty -e OPENIO_IPADDR=192.168.56.101 --net=host openio/sds