Public Repository

Last pushed: 2 months ago
Short Description
IBM Cloudant Developer Edition
Full Description

What is the Cloudant Developer Edition ?

The Cloudant Developer Edition is a fully-featured version of our Cloudant Local product with the following restrictions.

  • Single node instance. No cluster capability
  • Licensed for development purposes only.

Getting Started

Download and install Docker. We recommend version 1.9 or above in order to take advantage of named volumes.

Once Docker is installed, download the image from Docker Hub.

docker pull ibmcom/cloudant-developer

Starting the Cloudant Developer Edition Container

To start the container using the docker, run the following:

docker run \
       --detach \
       --volume cloudant:/srv \
       --name cloudant-developer \
       --publish 8080:80 \
       --hostname cloudant.dev \
       ibmcom/cloudant-developer

To start the container via Docker Compose, create a docker-compose.yml file with the following content:

version: '3'
services:

  cloudant-developer:
    build:
      context: .
    image: ibmcom/cloudant-developer:latest
    container_name: cloudant-developer
    hostname: developer.local
    ports:
      - "8080:80"
    volumes:
      - cloudant-developer:/srv
    network_mode: bridge

volumes:
  cloudant-developer:

From the same directory you created the docker-compose.yml file in, you can start the container by running:

docker-compose pull
docker-compose up -d

End User License

This is licensed for development purposes only and not intended for production use. Go here to view / accept End User License.

Note: By downloading and running this instance, you are agreeing with all the terms and conditions of our license referenced above.

Cloudant Dashboard

To access to the cloudant dashboard, enter the following URL http://localhost:8080/dashboard.html in your browser. The default login credentials are:

  • username = admin
  • password = pass

Note: If you are running docker on Mac OS X or Windows where docker is run within a virtual machine, you would replace the localhost in the URL with the Docker virtual machines IP address.

Supported Docker versions

This image is officially supported on Docker version 1.11.0.

Support for older versions (down to 1.9) is provided on a best-effort basis.

Please see the Docker installation documentation for details on how to upgrade your Docker daemon.

Additional Information

For additional information on using the Cloudant API, see the online documentation. For technical issues, search for Cloudant on StackOverflow. If you don't find an answer, post your question there with the tag "cloudant".

License

The Dockerfile and associated scripts are licensed under the Apache License 2.0. Cloudant-developer is licensed under the IBM International License Agreement for Non-Warranted Programs. This license for Cloudant Developer can be found online. Note that this license does not permit further distribution.

Upgrading from 1.x

When upgrading from a 1.x version, the following changes apply:

  1. You no longer need/can run the container in privilege mode.
  2. You no longer need to accept the license before starting the container.
  3. You no longer need to initialize the database/volume manually.

Frequently Asked Questions (FAQs)

Q1. How do I view the containers log files.
A1. Run the following command from a terminal window

docker logs cloudant-developer

Q2. I'm running Docker on a Mac or Windows via VirtualBox. How do I find the IP address of the Docker virtual machine ?
A2. Run the following command from a terminal window.

docker-machine ls

Q3. When I try launching the dashboard via my browser, I get a partial screen with no login prompts.
A3. You most likely have not initialized the da the first time.

Q4. How would I run the container on a different port?
A4. Change the value of the docker run --publish option. For example, if we want to run on port 80, the option to the docker run command would be --publish 80:80 .

Q5. Why am I having trouble upgrading?
A5. You may be having issues with incompatible volumes left over from an older version of Cloudant Developer. Try deleting those volumes

docker volume rm cloudant

On newer versions of docker, you can simply use the prune command.

docker volume prune

Q6. Why am I seeing (possibly intermittent) failures on startup?
A7. If you see the following line in /var/log/supervisor/supervisord.log:
unix:///var/run/supervisor/supervisor.sock refused connection
You may be affected by a linux kernel bug that can prevent overlayfs from working with unix domain sockets.

Docker Pull Command
Owner
ibmcom

Comments (11)
markwatsonatx
3 months ago

jagraj
5 months ago

The dashboard problem on my windows box is fixed after editing one of the file inside the container.
Instructions :

  1. docker exec -i -t cloudant-developer /bin/bash
  2. vi /etc/haproxy/haproxy.cfg
  3. replace this line "server cloudant.dev 172.17.0.2:5984 check inter 7s" to "server cloudant.dev 127.0.0.1:5984 check inter 7s"
  4. save and exit from container shell
  5. stop and restart container. (docker stop cloudant-developer , docker start cloudant-developer)
jagraj
5 months ago

Hi, I installed cloudant on my docker toolbox virtual machine and my dashboard does not do anything. I did run all the instructions listed in this document. Can any one got into this problem.?

vajadhav
6 months ago

Re booted my system. Starting docker terminal. Started ibmcom/cloudant-developer by using container id. Command "docker exec -ti cloudant-developer cast license --console" executed successfully

vajadhav
6 months ago

while running command "docker exec -ti cloudant-developer cast license --console" I m getting error like -rpc error: code = 2 desc = containerd: container did not start before the specified timeout
I verified my docker version its - 1.12.0
Due to this I m unable to initialize the Cloudant Data Volume and unable to proceed further. what could be the issue

jurajibm
7 months ago

I solved the 503 errors in the dashboard. The problem was in /etc/haproxy/haproxy.cfg with the server definition for the dbfarm which is "hardcoded" to "server cloudant.dev 172.17.0.2:5984 check inter 7s" in the image it seems. Changing it to "server localhost 127.0.0.1:5984 check inter 7s" solved the problem.

jurajibm
8 months ago

The dashboard.html does not load properly, throwing lot's of 503 errors, so the image is unusable.

1986
9 months ago

1.0.1 throws a lot of 503's and won't properly load the Dashboard. 1.0.0 appears to work. docker history shows a second /usr/sbin/init added about two weeks ago.

juliobetta
9 months ago

Is it possible to run this container via Docker Compose???
When I access http://localhost:5983, which is the port that I've attached to cloudant-developer, it shows a 503 error.

Here follows my docker-compose.json.

version: '2'
services:
  web:
    build: ./servers/nodejs
    ports:
      - "3000:3000"
    volumes:
      - ./servers/nodejs:/var/www/app/current
    depends_on:
      - cloudant

  cloudant:
    build:
      context: ./servers/cloudant/
    ports:
      - "5983:80"
    privileged: true
    volumes:
      - ./servers/data/cloudant-data:/srv/cloudant

I did run the cast commands, but it keeps showing the 503 error anyways.

dotnsf
10 months ago

Sorry for my previous comment. My docker version was too old(1.7). I have configured it with 1.11, and now I can successfully run cloudant-developer on my local machine. Thanks.