Skip to main content
Version: Early Access

Single node Docker deployments

This topic describes how to run a single node instance of Release using Docker.

Docker Run

You can run the official Release Docker images from Digital.ai using the docker run command as follows:

docker run -d  \
-e ADMIN_PASSWORD=admin \
-e ACCEPT_EULA=Y \
-p 5516:5516 \
--name xl-release xebialabs/xl-release:25.1.0

This will start the Release container and print out the container ID. You can also find running containers using the docker ps command. You can also pass more environment variables to the command using -e flags.

You can stream the logs from the container using docker logs -f <container id>

You can mount volumes if required, while executing the docker run command as shown below.

note

In our example we are mounting configurations and hotfix from local volumes.

docker run -d  \
-e ADMIN_PASSWORD=admin \
-e ACCEPT_EULA=Y \
-p 5516:5516 \
-v ~/XebiaLabs/xl-release-server/conf:/opt/xebialabs/xl-release-server/conf \
-v ~/XebiaLabs/xl-release-server/hotfix/:/opt/xebialabs/xl-release-server/hotfix/ \
--name xl-release xebialabs/xl-release:25.1.0

Once the containers have started, you can access them at http://localhost:5516/. You might want to wait for a minute for the service to be up and running.

Docker Compose

You can also use a Docker Compose file to run Release containers, as shown in the example below:

version: "2"
services:
xl-release:
image: xebialabs/xl-release:25.1.0
container_name: xl-release
ports:
- "5516:5516"
links:
- xl-deploy
volumes:
- xlr:/opt/xebialabs/xl-release-server
environment:
- ADMIN_PASSWORD=admin
- ACCEPT_EULA=Y

Save the above content to a file named docker-compose.yml in a folder and run docker-compose up -d from the same folder.

If you use a different file name, then run docker-compose -f <filename.yaml> up -d

Once the containers have started, you can access them at http://localhost:5516/. You might want to wait for a minute for the service to be up and running.

Single Node Deploy And Release Deployment

If you want to run a single node instance of both Release and Deploy you can use the following Docker Compose file:

version: "2"
services:
xl-deploy:
image: xebialabs/xl-deploy:25.1.0
container_name: xl-deploy
ports:
- "4516:4516"
volumes:
- ~/XebiaLabs/xl-deploy-server/conf:/opt/xebialabs/xl-deploy-server/conf
- ~/XebiaLabs/xl-deploy-server/hotfix/lib:/opt/xebialabs/xl-deploy-server/hotfix/lib
- ~/XebiaLabs/xl-deploy-server/hotfix/plugins:/opt/xebialabs/xl-deploy-server/hotfix/plugins
environment:
- ADMIN_PASSWORD=admin
- ACCEPT_EULA=Y

xl-release:
image: xebialabs/xl-release:25.1.0
container_name: xl-release
ports:
- "5516:5516"
links:
- xl-deploy
volumes:
- ~/XebiaLabs/xl-release-server/conf:/opt/xebialabs/xl-release-server/conf
- ~/XebiaLabs/xl-release-server/hotfix/:/opt/xebialabs/xl-release-server/hotfix/
environment:
- ADMIN_PASSWORD=admin
- ACCEPT_EULA=Y

Once the containers have started, you can access Deploy at http://localhost:4516/ and Release at http://localhost:5516/. You might want to wait for a minute for the services to be up and running.

When running Release and Deploy with Docker, you might want to configure an XLD instance on XLR for deployment tasks.

  1. From the navigation pane, under Configuration, click Connections > Deploy server.
  2. Click add icon to add a new configuration.
  3. Fill in the following details, click Test and then Save:

Title: xl-deploy-docker URL: http://xl-deploy:4516 Username: admin Password: admin

You can leave other fields empty. Fill in your own admin password.