Install playSMS using Docker in DigitalOcean

So far I’m satisfied with what I get from docker-playsms project, in such a short time. From the project I have built the Docker image and push it to the registry so that people can use it right away. The project also intended for people who want to build the image them self, customize it, fix it, add or remove stuffs, re-package it and then push it under their own name, for their own purposes.

I might be too early to get satisfied, but I do, so be it :)

I realize that so much things can be improved, so much stuffs can be added and enhanced. But I leave that to us all, can’t do it my self for sure, for now.

Anyway.

This article is the tutorial on how to install playSMS, a Free and Open Source SMS portal or SMS gateway, using Docker in DigitalOcean. We will be using the Docker application image available on DigitalOcean and playSMS Docker image available in Docker hub.

The tutorial can be followed in about 30 minutes. Once you learnt then you can do this again faster, I’d say less than 15 minutes.

Let’ start.

Step 1

Login to DigitalOcean.

Of course if you don’t have an account then you must sign up for one first.

01_digitalocean_login

Picture 1: Login to DigitalOcean

Step 2

After logged in go to Create Droplet page by clicking the Create Droplet green button on your top-right corner.

Fill the droplet HOSTNAME and then select size. I filled docker.playsms.org as the droplet HOSTNAME and I chose smallest size just for this tutorial.

02_digitalocean_droplet_512

Picture 2: Create Droplet

At the bottom of the same page click on Applications tab and then you must select Docker image.

03_digitalocean_droplet_docker

Picture 3: Select Image

Make the droplet and wait for about 1 minute until finished.

The root password will be emailed to your email address, but if you chose to use SSH key then you don’t need to use password for SSH from your laptop or PC.

Step 3

Once the making is done you need to get the droplet IP address (DROPLET_IP).

04_digitalocean_droplet_done

Picture 4: Droplet IP

Step 4

SSH to DROPLET_IP, in this tutorial the DROPLET_IP is 128.199.116.137.

05_host_ssh_login

Picture 5: SSH to DROPLET_IP

Step 5

Begin playSMS installation, the Docker style, search for image, pull it:

docker search playsms
docker pull antonraharja/playsms

06_docker_search_pull

Picture 6: Search and Pull

Pull completed, make sure the image is there:

docker images

07_docker_pull_complete

Picture 7: Pull completed

Step 6

You have pulled the image, Install playSMS by running the image. The docker run command will print out the CONTAINER_ID, which then you can use it to view what’s going on inside the container, executing commands on the inside of the container from host, stop it, start it and other management operation.

You don’t need to copy or remember that lengthy CONTAINER_ID, just 4 or 5 first digits of it will suffice.

So, run the image and follows it:

docker run -d -p 2222:22 -p 80:80 antonraharja/playsms
docker logs -f CONTAINER_ID

08_docker_install_start

Picture 8: Run image

Note, as displayed on the picture above, in this tutorial the CONTAINER_ID is 4f4f. Remember, only 4 or 5 first digits will suffice.

Wait for a while, probably 2 to 5 minutes, keep watching the log. You should see it on the log command if the installation has finished.

09_docker_install_done

Picture 9: Installation finished

Verify if playSMS is installed correctly by running playsmsd check on the inside of the container, run this:

docker exec CONTAINER_ID playsmsd check

10_docker_install_verify

Picture 10: playsmsd check

Successful installation means that you see all playSMS daemons are running (they are all have PIDS) as displayed on above example picture.

Step 7

Next, change the default root password. This is very important. The root password can be use to login via SSH from remote, so you do need change the default root password with your own strong and secure password.

The default root password is changemeplease

ssh -p 2222 root@localhost
passwd root

11_docker_change_root_password

Picture 11: Change the default root password

Step 8

All done, last step. Now tests.

First test, SSH from remote, from your laptop or PC:

ssh -p 2222 root@DROPLET_IP
ps ax

12_docker_ssh_from_remote

Picture 12: SSH to the container from remote

Next, browse installed playSMS:

13_docker_browse

Picture 13: Browse the container from remote

When you have successfully SSH from remote using your own strong and secure password, and login to playSMS using default playSMS username and password (admin / admin), then the installation is finished.

You may now try again one more time, without reading this tutorial :)

Enjoy.

anton

3 thoughts on “Install playSMS using Docker in DigitalOcean

Comments are closed.