From da0a14628e757d3c67923ce068754f3f5c61738d Mon Sep 17 00:00:00 2001 From: Dave Chevell Date: Fri, 2 Aug 2019 14:52:43 +1000 Subject: [PATCH] Merge ubuntu and alpine branches together --- Dockerfile-alpine | 40 ++++++++++++++++++++++++++++++ bitbucket-pipelines.yml | 54 ++++++++++++++++++++++++++++++++++++++--- 2 files changed, 90 insertions(+), 4 deletions(-) create mode 100644 Dockerfile-alpine diff --git a/Dockerfile-alpine b/Dockerfile-alpine new file mode 100644 index 0000000..a16f387 --- /dev/null +++ b/Dockerfile-alpine @@ -0,0 +1,40 @@ +FROM adoptopenjdk/openjdk8:alpine +MAINTAINER Atlassian Confluence + +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/doc/confluence-home-and-other-important-directories-590259707.html +ENV CONFLUENCE_HOME /var/atlassian/application-data/confluence +ENV CONFLUENCE_INSTALL_DIR /opt/atlassian/confluence + +VOLUME ["${CONFLUENCE_HOME}"] + +# Expose HTTP and Synchrony ports +EXPOSE 8090 +EXPOSE 8091 + +WORKDIR $CONFLUENCE_HOME + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/sbin/tini", "--"] + +RUN apk add --no-cache ca-certificates wget curl openssh bash procps openssl perl ttf-dejavu tini + +# Workaround for AdoptOpenJDK Alpine fontconfig bug +RUN ln -s /usr/lib/libfontconfig.so.1 /usr/lib/libfontconfig.so \ + && ln -s /lib/libuuid.so.1 /usr/lib/libuuid.so.1 \ + && ln -s /lib/libc.musl-x86_64.so.1 /usr/lib/libc.musl-x86_64.so.1 +ENV LD_LIBRARY_PATH /usr/lib + +COPY entrypoint.sh /entrypoint.sh + +ARG CONFLUENCE_VERSION +ARG DOWNLOAD_URL=http://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-${CONFLUENCE_VERSION}.tar.gz + +RUN mkdir -p ${CONFLUENCE_INSTALL_DIR} \ + && curl -L --silent ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$CONFLUENCE_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${CONFLUENCE_INSTALL_DIR}/ \ + && sed -i -e 's/-Xms\([0-9]\+[kmg]\) -Xmx\([0-9]\+[kmg]\)/-Xms\${JVM_MINIMUM_MEMORY:=\1} -Xmx\${JVM_MAXIMUM_MEMORY:=\2} \${JVM_SUPPORT_RECOMMENDED_ARGS} -Dconfluence.home=\${CONFLUENCE_HOME}/g' ${CONFLUENCE_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/port="8090"/port="8090" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${CONFLUENCE_INSTALL_DIR}/conf/server.xml \ + && sed -i -e 's/Context path=""/Context path="${catalinaContextPath}"/' ${CONFLUENCE_INSTALL_DIR}/conf/server.xml diff --git a/bitbucket-pipelines.yml b/bitbucket-pipelines.yml index eb05ca9..49c074b 100644 --- a/bitbucket-pipelines.yml +++ b/bitbucket-pipelines.yml @@ -2,8 +2,9 @@ image: atlassian/docker-release-maker:latest pipelines: custom: - create-new-releases: + new-releases: - step: + name: Confluence Ubuntu services: - docker script: @@ -15,7 +16,21 @@ pipelines: - export TAG_SUFFIXES='adoptopenjdk8,jdk8,ubuntu,ubuntu-18.04-adoptopenjdk8' - echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin - python /usr/src/app/run.py --create - create-custom-release: + - step: + name: Confluence Alpine + services: + - docker + script: + - export BASE_VERSION='6' + - export DEFAULT_RELEASE='false' + - export DOCKER_REPO='atlassian/confluence-server' + - export DOCKERFILE='Dockerfile-alpine' + - export DOCKERFILE_VERSION_ARG='CONFLUENCE_VERSION' + - export MAC_PRODUCT_KEY='confluence' + - export TAG_SUFFIXES='alpine,alpine-adoptopenjdk8' + - echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin + - python /usr/src/app/run.py --create + ubuntu-custom-release: - variables: - name: CONFLUENCE_VERSION - name: DOCKER_TAG @@ -24,11 +39,28 @@ pipelines: - docker script: - echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin - - docker build -t atlassian/confluence-server:${DOCKER_TAG} --build-arg CONFLUENCE_VERSION=${CONFLUENCE_VERSION} . + - > + docker build -t atlassian/confluence-server:${DOCKER_TAG} + --build-arg CONFLUENCE_VERSION=${CONFLUENCE_VERSION} . + - docker push atlassian/confluence-server:${DOCKER_TAG} + alpine-custom-release: + - variables: + - name: CONFLUENCE_VERSION + - name: DOCKER_TAG + - step: + services: + - docker + script: + - echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin + - > + docker build -t atlassian/confluence-server:${DOCKER_TAG} + -f Dockerfile-alpine + --build-arg CONFLUENCE_VERSION=${CONFLUENCE_VERSION} . - docker push atlassian/confluence-server:${DOCKER_TAG} branches: - base-6-adoptopenjdk8: + master: - step: + name: Confluence Ubuntu services: - docker script: @@ -39,4 +71,18 @@ pipelines: - export MAC_PRODUCT_KEY='confluence' - export TAG_SUFFIXES='adoptopenjdk8,jdk8,ubuntu,ubuntu-18.04-adoptopenjdk8' - echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin + - python /usr/src/app/run.py --update + - step: + name: Confluence Alpine + services: + - docker + script: + - export BASE_VERSION='6' + - export DEFAULT_RELEASE='false' + - export DOCKER_REPO='atlassian/confluence-server' + - export DOCKERFILE='Dockerfile-alpine' + - export DOCKERFILE_VERSION_ARG='CONFLUENCE_VERSION' + - export MAC_PRODUCT_KEY='confluence' + - export TAG_SUFFIXES='alpine,alpine-adoptopenjdk8' + - echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin - python /usr/src/app/run.py --update \ No newline at end of file