mirror of
https://github.com/jwetzell/docker-guacamole.git
synced 2026-09-10 08:39:35 +00:00
added support for armhf
This commit is contained in:
+11
@@ -0,0 +1,11 @@
|
|||||||
|
services:
|
||||||
|
- docker
|
||||||
|
|
||||||
|
before_install:
|
||||||
|
- git clone https://github.com/oznu/docker-arm-ci.git ~/docker-arm-ci
|
||||||
|
|
||||||
|
before_scripts:
|
||||||
|
- export TARGET_IMAGE_TAG=$(if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then if [ "$TRAVIS_BRANCH" = "master" ]; then echo "armhf"; else echo "$TRAVIS_BRANCH-armhf"; fi; else echo ""; fi)
|
||||||
|
|
||||||
|
script:
|
||||||
|
- ~/docker-arm-ci/run.sh
|
||||||
+12
-11
@@ -1,19 +1,19 @@
|
|||||||
FROM tomcat:7-jre8
|
FROM library/tomcat:7-jre8
|
||||||
|
|
||||||
ENV GUAC_VER=0.9.13-incubating \
|
ENV ARCH=amd64 \
|
||||||
GUACAMOLE_HOME=/app/guacamole
|
GUAC_VER=0.9.13-incubating \
|
||||||
|
GUACAMOLE_HOME=/app/guacamole \
|
||||||
ENV PG_MAJOR=9.6 \
|
PG_MAJOR=9.6 \
|
||||||
PGDATA=/config/postgres \
|
PGDATA=/config/postgres \
|
||||||
POSTGRES_USER=guacamole \
|
POSTGRES_USER=guacamole \
|
||||||
POSTGRES_DB=guacamole_db
|
POSTGRES_DB=guacamole_db
|
||||||
|
|
||||||
# Apply the s6-overlay
|
# Apply the s6-overlay
|
||||||
|
|
||||||
RUN curl -SLO "https://github.com/just-containers/s6-overlay/releases/download/v1.20.0.0/s6-overlay-amd64.tar.gz" \
|
RUN curl -SLO "https://github.com/just-containers/s6-overlay/releases/download/v1.20.0.0/s6-overlay-${ARCH}.tar.gz" \
|
||||||
&& tar -xzf s6-overlay-amd64.tar.gz -C / \
|
&& tar -xzf s6-overlay-${ARCH}.tar.gz -C / \
|
||||||
&& tar -xzf s6-overlay-amd64.tar.gz -C /usr ./bin \
|
&& tar -xzf s6-overlay-${ARCH}.tar.gz -C /usr ./bin \
|
||||||
&& rm -rf s6-overlay-amd64.tar.gz \
|
&& rm -rf s6-overlay-${ARCH}.tar.gz \
|
||||||
&& mkdir -p ${GUACAMOLE_HOME} \
|
&& mkdir -p ${GUACAMOLE_HOME} \
|
||||||
${GUACAMOLE_HOME}/lib \
|
${GUACAMOLE_HOME}/lib \
|
||||||
${GUACAMOLE_HOME}/extensions
|
${GUACAMOLE_HOME}/extensions
|
||||||
@@ -31,14 +31,15 @@ RUN apt-get update && apt-get install -y \
|
|||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Link FreeRDP to where guac expects it to be
|
# Link FreeRDP to where guac expects it to be
|
||||||
RUN ln -s /usr/local/lib/freerdp /usr/lib/x86_64-linux-gnu/freerdp
|
RUN [ "$ARCH" = "armhf" ] && ln -s /usr/local/lib/freerdp /usr/lib/arm-linux-gnueabihf/freerdp || exit 0
|
||||||
|
RUN [ "$ARCH" = "amd64" ] && ln -s /usr/local/lib/freerdp /usr/lib/x86_64-linux-gnu/freerdp || exit 0
|
||||||
|
|
||||||
# Install guacamole-server
|
# Install guacamole-server
|
||||||
RUN curl -SLO "https://sourceforge.net/projects/guacamole/files/current/source/guacamole-server-${GUAC_VER}.tar.gz" \
|
RUN curl -SLO "https://sourceforge.net/projects/guacamole/files/current/source/guacamole-server-${GUAC_VER}.tar.gz" \
|
||||||
&& tar -xzf guacamole-server-${GUAC_VER}.tar.gz \
|
&& tar -xzf guacamole-server-${GUAC_VER}.tar.gz \
|
||||||
&& cd guacamole-server-${GUAC_VER} \
|
&& cd guacamole-server-${GUAC_VER} \
|
||||||
&& ./configure \
|
&& ./configure \
|
||||||
&& make \
|
&& make -j$(getconf _NPROCESSORS_ONLN) \
|
||||||
&& make install \
|
&& make install \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf guacamole-server-${GUAC_VER}.tar.gz guacamole-server-${GUAC_VER} \
|
&& rm -rf guacamole-server-${GUAC_VER}.tar.gz guacamole-server-${GUAC_VER} \
|
||||||
|
|||||||
@@ -0,0 +1,75 @@
|
|||||||
|
FROM arm32v7/tomcat:7-jre8
|
||||||
|
|
||||||
|
ENV ARCH=armhf \
|
||||||
|
GUAC_VER=0.9.13-incubating \
|
||||||
|
GUACAMOLE_HOME=/app/guacamole \
|
||||||
|
PG_MAJOR=9.6 \
|
||||||
|
PGDATA=/config/postgres \
|
||||||
|
POSTGRES_USER=guacamole \
|
||||||
|
POSTGRES_DB=guacamole_db
|
||||||
|
|
||||||
|
# Apply the s6-overlay
|
||||||
|
|
||||||
|
RUN curl -SLO "https://github.com/just-containers/s6-overlay/releases/download/v1.20.0.0/s6-overlay-${ARCH}.tar.gz" \
|
||||||
|
&& tar -xzf s6-overlay-${ARCH}.tar.gz -C / \
|
||||||
|
&& tar -xzf s6-overlay-${ARCH}.tar.gz -C /usr ./bin \
|
||||||
|
&& rm -rf s6-overlay-${ARCH}.tar.gz \
|
||||||
|
&& mkdir -p ${GUACAMOLE_HOME} \
|
||||||
|
${GUACAMOLE_HOME}/lib \
|
||||||
|
${GUACAMOLE_HOME}/extensions
|
||||||
|
|
||||||
|
WORKDIR ${GUACAMOLE_HOME}
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
libcairo2-dev libjpeg62-turbo-dev libpng-dev \
|
||||||
|
libossp-uuid-dev libavcodec-dev libavutil-dev \
|
||||||
|
libswscale-dev libfreerdp-dev libpango1.0-dev \
|
||||||
|
libssh2-1-dev libtelnet-dev libvncserver-dev \
|
||||||
|
libpulse-dev libssl-dev libvorbis-dev libwebp-dev \
|
||||||
|
ghostscript postgresql-${PG_MAJOR} \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# Link FreeRDP to where guac expects it to be
|
||||||
|
RUN [ "$ARCH" = "armhf" ] && ln -s /usr/local/lib/freerdp /usr/lib/arm-linux-gnueabihf/freerdp || exit 0
|
||||||
|
RUN [ "$ARCH" = "amd64" ] && ln -s /usr/local/lib/freerdp /usr/lib/x86_64-linux-gnu/freerdp || exit 0
|
||||||
|
|
||||||
|
# Install guacamole-server
|
||||||
|
RUN curl -SLO "https://sourceforge.net/projects/guacamole/files/current/source/guacamole-server-${GUAC_VER}.tar.gz" \
|
||||||
|
&& tar -xzf guacamole-server-${GUAC_VER}.tar.gz \
|
||||||
|
&& cd guacamole-server-${GUAC_VER} \
|
||||||
|
&& ./configure \
|
||||||
|
&& make -j$(getconf _NPROCESSORS_ONLN) \
|
||||||
|
&& make install \
|
||||||
|
&& cd .. \
|
||||||
|
&& rm -rf guacamole-server-${GUAC_VER}.tar.gz guacamole-server-${GUAC_VER} \
|
||||||
|
&& ldconfig
|
||||||
|
|
||||||
|
# Install guacamole-client and postgres auth adapter
|
||||||
|
RUN rm -rf ${CATALINA_HOME}/webapps/ROOT \
|
||||||
|
&& curl -SLo ${CATALINA_HOME}/webapps/ROOT.war "https://sourceforge.net/projects/guacamole/files/current/binary/guacamole-${GUAC_VER}.war" \
|
||||||
|
&& curl -SLo ${GUACAMOLE_HOME}/lib/postgresql-42.1.4.jar "https://jdbc.postgresql.org/download/postgresql-42.1.4.jar" \
|
||||||
|
&& curl -SLO https://sourceforge.net/projects/guacamole/files/current/extensions/guacamole-auth-jdbc-${GUAC_VER}.tar.gz \
|
||||||
|
&& tar -xzf guacamole-auth-jdbc-${GUAC_VER}.tar.gz \
|
||||||
|
&& cp -R guacamole-auth-jdbc-${GUAC_VER}/postgresql/guacamole-auth-jdbc-postgresql-0.9.13-incubating.jar ${GUACAMOLE_HOME}/extensions/ \
|
||||||
|
&& cp -R guacamole-auth-jdbc-${GUAC_VER}/postgresql/schema ${GUACAMOLE_HOME}/ \
|
||||||
|
&& rm -rf guacamole-auth-jdbc-${GUAC_VER} guacamole-auth-jdbc-${GUAC_VER}.tar.gz
|
||||||
|
|
||||||
|
# Add optional extensions
|
||||||
|
RUN mkdir ${GUACAMOLE_HOME}/extensions-available \
|
||||||
|
&& for i in auth-ldap auth-duo auth-header auth-noauth auth-cas; do \
|
||||||
|
echo "https://sourceforge.net/projects/guacamole/files/current/extensions/guacamole-${i}-${GUAC_VER}.tar.gz" \
|
||||||
|
&& curl -SLO "https://sourceforge.net/projects/guacamole/files/current/extensions/guacamole-${i}-${GUAC_VER}.tar.gz" \
|
||||||
|
&& tar -xzf guacamole-${i}-${GUAC_VER}.tar.gz \
|
||||||
|
&& cp guacamole-${i}-${GUAC_VER}/guacamole-${i}-${GUAC_VER}.jar ${GUACAMOLE_HOME}/extensions-available/ \
|
||||||
|
&& rm -rf guacamole-${i}-${GUAC_VER} guacamole-${i}-${GUAC_VER}.tar.gz \
|
||||||
|
;done
|
||||||
|
|
||||||
|
ENV PATH=/usr/lib/postgresql/${PG_MAJOR}/bin:$PATH
|
||||||
|
ENV GUACAMOLE_HOME=/config/guacamole
|
||||||
|
|
||||||
|
WORKDIR /config
|
||||||
|
|
||||||
|
COPY root /
|
||||||
|
|
||||||
|
ENTRYPOINT [ "/init" ]
|
||||||
Reference in New Issue
Block a user