Docker Image of Texera - Texera/texera GitHub Wiki
Docker
Docker is an open source platform for creating and shipping easy and extensible software containers as VM images. It is becoming immensely popular and seemed like a natural choice for shipping a complex piece of software like Texera. This will enable us to quickly develop, ship and reach users easily using the Docker environment. You can find more information about Docker on their website found here
Installing Docker
In order to install Docker, you can follow the instructions found for each respective OS as mentioned below:
- Mac - Instructions here
- Windows - Instructions here
- Ubuntu - Instructions here
Downloading and Running the Texera Docker Container
In order to download and run the Texera Docker container, follow these steps.
- Launch Docker in the manner specified for your platform:
- Mac - Launch the Docker application after downloading it from the previous section (it should be an application like all other applications).
- Windows - Launch the Docker application after downloading it from the previous section (it should be an application like all other applications).
- Ubuntu - Follow Step 2 on this link
- List the images present on your computer by executing the command
docker images
on your command line. If Texera is listed on the list astexera/texera
skip the next step. - If it is not present in the list when executing the above command, then execute the command
docker pull texera/texera
. This should take some time but you will see a progress indicator throughout. - Once the image has been pulled, run the Docker container for Texera by executing the command
docker run -p 8080:8080 texera/texera
. Once this is done you will have a Texera instance running locally.
Pushing Updated Images
In order to update the Texera Docker container as we make code changes, we will utilize the Maven Docker Plugin provided by Spotify which can be found here. This is only necessary when we publish major versions, and needn't be done every single time a change has been made to master
. In order to publish this change, only authorized members of the team who have been added to the DockerHub organization can do so. For any such user, who wishes to publish changes execute the following commands.
- Login to Docker on your command line by executing
docker login
. You will be prompted for your login credentials. - Build the entire of Texera by performing the command
mvn clean install
. - Change directory to
texdb-web
by executingcd texera-web
. - Perform a Docker build by executing the command
mvn clean package docker:build
. - Once the above command has been executed successfully, the container is then ready to be pushed to DockerHub using the command,
docker push texera/texera
NOTE - The last section only applies to developers who have push permission on the Docker Texera organization.