Rundeck server based on Debian
84c49e96e2fe4670046558f0842c8ea7475f15d0..fd74137670010417f137916b8348ade9a625defe
2018-11-23 Jacek Kowalski
Install Ansible from stretch-backports
fd7413 diff | tree
2018-11-23 Jacek Kowalski
Fixes for Rundeck 3.0 release
d6614a diff | tree
3 files modified
1 files deleted
89 ■■■■ changed files
Dockerfile 21 ●●●●● patch | view | raw | blame | history
README.md 27 ●●●●● patch | view | raw | blame | history
ansible-gpg.key 25 ●●●●● patch | view | raw | blame | history
run.sh 16 ●●●●● patch | view | raw | blame | history
Dockerfile
@@ -1,26 +1,33 @@
FROM debian:stretch
FROM openjdk:8-jre-slim-stretch
ENV DEBIAN_FRONTEND noninteractive
ENV RDECK_JVM_SETTINGS "-Xmx1024m -Xms256m -XX:MaxMetaspaceSize=256m -server"
EXPOSE 4440
ADD *-gpg.key /root/
RUN apt-get -y update \
    && apt-get -y install gnupg \
    && apt-get -y upgrade \
    && echo 'deb http://httpredir.debian.org/debian stretch-backports main' > \
        /etc/apt/sources.list.d/stretch-backports.list \
    && echo "deb http://dl.bintray.com/rundeck/rundeck-deb /" > /etc/apt/sources.list.d/rundeck.list \
    && apt-get -y install openssh-client wget gnupg \
    && echo "deb http://dl.bintray.com/rundeck/rundeck-deb /" \
        > /etc/apt/sources.list.d/rundeck.list \
    && cat /root/*-gpg.key | apt-key add - \
    && apt-get -y update \
    && apt-get -y install rundeck \
    && apt-get -y clean \
    && rm -Rf /var/lib/apt/lists/*
RUN echo "deb http://ftp.debian.org/debian stretch-backports main" \
        > /etc/apt/sources.list.d/backports.list \
    && apt-get -y update \
    && apt-get -y upgrade \
    && apt-get -y -t stretch-backports install \
        openssh-client openjdk-8-jre-headless wget rundeck \
        ansible git python-netaddr python3-netaddr \
    && apt-get -y clean \
    && rm -Rf /var/lib/apt/lists/*
RUN mkdir /etc/rundeck-org \
    && mv /etc/rundeck/* /etc/rundeck-org/
       && mv /etc/rundeck/* /etc/rundeck-org/
ADD run.sh /
CMD /run.sh
README.md
@@ -3,6 +3,12 @@
This is a Docker image of Rundeck (http://rundeck.org)
based on `debian:latest`
## Upgrading
Since version 3.0 /etc/rundeck/profile will be overriden!
To customize JVM options use environment variable:
`RDECK_JVM_SETTINGS`. See section "Configuration" below.
## Usage
```bash
@@ -29,7 +35,7 @@
### Local volumes
You use local storage instead of data volumes:
You can use local storage instead of data volumes:
```bash
docker run -d --name=rundeck -p 4440:4440 \
@@ -80,4 +86,21 @@
## Configuration
You can change Java system properties and JVM options by modifying
`RDECK_JVM` property in `/etc/rundeck/profile` (which is persisted).
`RDECK_JVM_SETTINGS` environment variable, which defaults to:
```
-Xmx1024m -Xms256m -XX:MaxMetaspaceSize=256m -server
```
Sample:
```
docker run -d --name=rundeck -p 4440:4440 \
    -v /srv/rundeck/etc:/etc/rundeck \
    -v /srv/rundeck/data:/var/lib/rundeck/data \
    -v /srv/rundeck/logs:/var/lib/rundeck/logs \
    -v /srv/rundeck/rundeck:/var/rundeck \
    -v /srv/rundeck/ssh:/var/lib/rundeck/.ssh \
    -e RDECK_JVM_SETTINGS="-Xms1024m -Xmx1024" \
    jacekkow/rundeck
```
ansible-gpg.key
File was deleted
run.sh
@@ -4,6 +4,15 @@
    cp -Rfp /etc/rundeck-org/* /etc/rundeck/
fi
# Rundeck 3.0 - new property
if ! grep -q -e "^rundeck.log4j.config.file" /etc/rundeck/rundeck-config.properties; then
    echo "rundeck.log4j.config.file = /etc/rundeck/log4j.properties" \
        >> /etc/rundeck/rundeck-config.properties
fi
# Rundeck 2.7, 3.0 - new profile
cp -fp /etc/rundeck-org/profile /etc/rundeck/profile
chown -Rf rundeck:rundeck /etc/rundeck /var/rundeck /var/lib/rundeck
chmod -Rf o-rwx /etc/rundeck /var/rundeck /var/lib/rundeck
@@ -11,12 +20,5 @@
chmod g+s,o+x /var/lib/rundeck/logs
. /etc/rundeck/profile
# Rundeck 2.6 to 2.7 migration - new profile file
if [ -z "$rundeckd" ]; then
    mv -f /etc/rundeck/profile /etc/rundeck/profile.pre-migration
    cp -f /etc/rundeck-org/profile /etc/rundeck/profile
    . /etc/rundeck/profile
fi
su rundeck -s /bin/bash -c "$rundeckd"