You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@guacamole.apache.org by vn...@apache.org on 2018/04/04 21:01:35 UTC
[03/10] guacamole-server git commit: GUACAMOLE-407: Update Docker
image to use more recent packages by switching to Ubuntu.
GUACAMOLE-407: Update Docker image to use more recent packages by switching to Ubuntu.
Project: http://git-wip-us.apache.org/repos/asf/guacamole-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/guacamole-server/commit/72638aa0
Tree: http://git-wip-us.apache.org/repos/asf/guacamole-server/tree/72638aa0
Diff: http://git-wip-us.apache.org/repos/asf/guacamole-server/diff/72638aa0
Branch: refs/heads/master
Commit: 72638aa03ecbf9d1b141ec271f2c7858488254fe
Parents: 3516704
Author: Michael Jumper <mj...@apache.org>
Authored: Thu Feb 8 12:40:15 2018 -0800
Committer: Michael Jumper <mj...@apache.org>
Committed: Sun Apr 1 21:16:38 2018 -0700
----------------------------------------------------------------------
Dockerfile | 121 ++++++++++++++++++++++++++++++++++++--------------------
1 file changed, 79 insertions(+), 42 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/guacamole-server/blob/72638aa0/Dockerfile
----------------------------------------------------------------------
diff --git a/Dockerfile b/Dockerfile
index 21b98d8..3e55dc1 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -22,9 +22,9 @@
#
-# Use CentOS as base for the build
-ARG CENTOS_VERSION=centos7
-FROM centos:${CENTOS_VERSION} AS builder
+# Use Ubuntu as base for the build
+ARG UBUNTU_VERSION=xenial
+FROM ubuntu:${UBUNTU_VERSION} AS builder
# Base directory for installed build artifacts.
# Due to limitations of the Docker image build process, this value is
@@ -37,29 +37,28 @@ ARG BUILD_DIR=/tmp/guacd-docker-BUILD
ARG BUILD_DEPENDENCIES=" \
autoconf \
automake \
- cairo-devel \
- freerdp-devel \
gcc \
- libjpeg-turbo-devel \
- libssh2-devel \
+ libcairo2-dev \
+ libfreerdp-dev \
+ libjpeg-turbo8-dev \
+ libossp-uuid-dev \
+ libpango1.0-dev \
+ libpulse-dev \
+ libssh2-1-dev \
+ libssl-dev \
+ libtelnet-dev \
libtool \
- libtelnet-devel \
- libvorbis-devel \
- libvncserver-devel \
- libwebp-devel \
- make \
- pango-devel \
- pulseaudio-libs-devel \
- uuid-devel"
+ libvncserver-dev \
+ libwebp-dev \
+ make"
# Build time environment
ENV LC_ALL=en_US.UTF-8
# Bring build environment up to date and install build dependencies
-RUN yum -y update && \
- yum -y install epel-release && \
- yum -y install $BUILD_DEPENDENCIES && \
- yum clean all
+RUN apt-get update && \
+ apt-get install -y $BUILD_DEPENDENCIES && \
+ rm -rf /var/lib/apt/lists/*
# Add configuration scripts
COPY src/guacd-docker/bin /opt/guacd/bin/
@@ -70,8 +69,8 @@ COPY . "$BUILD_DIR"
# Build guacamole-server from local source
RUN /opt/guacd/bin/build-guacd.sh "$BUILD_DIR" "$PREFIX_DIR"
-# Use same CentOS as the base for the runtime image
-FROM centos:${CENTOS_VERSION}
+# Use same Ubuntu as the base for the runtime image
+FROM ubuntu:${UBUNTU_VERSION}
# Base directory for installed build artifacts.
# Due to limitations of the Docker image build process, this value is
@@ -85,36 +84,74 @@ ENV LC_ALL=en_US.UTF-8
ENV GUACD_LOG_LEVEL=info
ARG RUNTIME_DEPENDENCIES=" \
- cairo \
- dejavu-sans-mono-fonts \
- freerdp \
- freerdp-plugins \
ghostscript \
- libjpeg-turbo \
- libssh2 \
- liberation-mono-fonts \
- libtelnet \
- libvorbis \
- libvncserver \
- libwebp \
- pango \
- pulseaudio-libs \
- terminus-fonts \
- uuid"
+ libcairo2 \
+ fonts-liberation \
+ fonts-dejavu \
+ libfreerdp-cache1.1 \
+ libfreerdp-client1.1 \
+ libfreerdp-codec1.1 \
+ libfreerdp-common1.1.0 \
+ libfreerdp-core1.1 \
+ libfreerdp-crypto1.1 \
+ libfreerdp-gdi1.1 \
+ libfreerdp-locale1.1 \
+ libfreerdp-plugins-standard \
+ libfreerdp-primitives1.1 \
+ libfreerdp-rail1.1 \
+ libfreerdp-utils1.1 \
+ libjpeg-turbo8 \
+ libossp-uuid16 \
+ libpango1.0 \
+ libpulse0 \
+ libssh2-1 \
+ libssl1.0.0 \
+ libtelnet2 \
+ libvncclient1 \
+ libwebp5 \
+ libwinpr-asn1-0.1 \
+ libwinpr-bcrypt0.1 \
+ libwinpr-credentials0.1 \
+ libwinpr-credui0.1 \
+ libwinpr-crt0.1 \
+ libwinpr-crypto0.1 \
+ libwinpr-dsparse0.1 \
+ libwinpr-environment0.1 \
+ libwinpr-error0.1 \
+ libwinpr-file0.1 \
+ libwinpr-handle0.1 \
+ libwinpr-heap0.1 \
+ libwinpr-input0.1 \
+ libwinpr-interlocked0.1 \
+ libwinpr-io0.1 \
+ libwinpr-library0.1 \
+ libwinpr-path0.1 \
+ libwinpr-pipe0.1 \
+ libwinpr-pool0.1 \
+ libwinpr-registry0.1 \
+ libwinpr-rpc0.1 \
+ libwinpr-sspi0.1 \
+ libwinpr-sspicli0.1 \
+ libwinpr-synch0.1 \
+ libwinpr-sysinfo0.1 \
+ libwinpr-thread0.1 \
+ libwinpr-timezone0.1 \
+ libwinpr-utils0.1 \
+ libwinpr-winhttp0.1 \
+ libwinpr-winsock0.1 \
+ xfonts-terminus"
# Bring runtime environment up to date and install runtime dependencies
-RUN yum -y update && \
- yum -y install epel-release && \
- yum -y install $RUNTIME_DEPENDENCIES && \
- yum clean all && \
- rm -rf /var/cache/yum
+RUN apt-get update && \
+ apt-get install -y $RUNTIME_DEPENDENCIES && \
+ rm -rf /var/lib/apt/lists/*
# Copy build artifacts into this stage
COPY --from=builder ${PREFIX_DIR} ${PREFIX_DIR}
# Link FreeRDP plugins into proper path
RUN FREERDP_DIR=$(dirname \
- $(rpm -ql freerdp-libs | grep 'libfreerdp.*\.so' | head -n1)) && \
+ $(dpkg-query -L libfreerdp | grep 'libfreerdp.*\.so' | head -n1)) && \
FREERDP_PLUGIN_DIR="${FREERDP_DIR}/freerdp" && \
mkdir -p "$FREERDP_PLUGIN_DIR" && \
ln -s "$PREFIX_DIR"/lib/freerdp/*.so "$FREERDP_PLUGIN_DIR"