Drew Short
5 years ago
5 changed files with 81 additions and 37 deletions
-
43Dockerfile
-
3Makefile
-
21README.md
-
40pipeline.yml
-
11upload_pipeline.sh
@ -1,39 +1,42 @@ |
|||||
FROM alpine:3.11 |
|
||||
LABEL maintainer="Chris Kankiewicz <Chris@ChrisKankiewicz.com>" |
|
||||
|
# Original maintainer https://hub.docker.com/r/phlak/mumble |
||||
|
# LABEL maintainer="Chris Kankiewicz <Chris@ChrisKankiewicz.com>" |
||||
|
|
||||
|
FROM alpine:3.11 AS downloader |
||||
|
LABEL maintainer="Drew Short <warrick@sothr.com>" |
||||
|
|
||||
# Define Mumble version |
|
||||
ARG MUMBLE_VERSION=1.3.0 |
ARG MUMBLE_VERSION=1.3.0 |
||||
|
ARG MUMBLE_SHA256=bda9dc3abe70e8dc820cc91aa33c4087b05001ab7995d039311b3396b7291609 |
||||
|
ARG BZIP_URL=https://github.com/mumble-voip/mumble/releases/download/${MUMBLE_VERSION}/murmur-static_x86-${MUMBLE_VERSION}.tar.bz2 |
||||
|
|
||||
|
WORKDIR /tmp |
||||
|
|
||||
# Create Mumble directories |
|
||||
RUN mkdir -pv /opt/mumble /etc/mumble |
RUN mkdir -pv /opt/mumble /etc/mumble |
||||
|
RUN apk add --update ca-certificates bzip2 tar curl |
||||
|
RUN curl -LSo murmur.tar.bz2 ${BZIP_URL} \ |
||||
|
&& echo "${MUMBLE_SHA256} /tmp/murmur.tar.bz2" | sha256sum -c \ |
||||
|
&& tar -xjf /tmp/murmur.tar.bz2 --strip-components=1 -C /opt/mumble |
||||
|
|
||||
|
FROM alpine:3.11 |
||||
|
LABEL maintainer="Drew Short <warrick@sothr.com>" |
||||
|
|
||||
|
WORKDIR /opt/mumble |
||||
|
|
||||
# Create non-root user |
|
||||
|
RUN mkdir -pv /opt/mumble /etc/mumble |
||||
RUN adduser -DHs /sbin/nologin mumble |
RUN adduser -DHs /sbin/nologin mumble |
||||
|
|
||||
# Copy config file |
|
||||
|
COPY --from=downloader /opt/mumble /opt/mumble |
||||
COPY files/config.ini /etc/mumble/config.ini |
COPY files/config.ini /etc/mumble/config.ini |
||||
|
|
||||
# Copy SuperUser password update script |
|
||||
COPY files/supw /usr/local/bin/supw |
COPY files/supw /usr/local/bin/supw |
||||
RUN chmod +x /usr/local/bin/supw |
|
||||
|
|
||||
# Set the bzip archive URL |
|
||||
ARG BZIP_URL=https://github.com/mumble-voip/mumble/releases/download/${MUMBLE_VERSION}/murmur-static_x86-${MUMBLE_VERSION}.tar.bz2 |
|
||||
|
|
||||
# Install dependencies, fetch Mumble bzip archive and chown files |
|
||||
RUN apk add --update ca-certificates bzip2 tar tzdata wget \ |
|
||||
&& wget -qO- ${BZIP_URL} | tar -xjv --strip-components=1 -C /opt/mumble \ |
|
||||
&& apk del ca-certificates bzip2 tar wget && rm -rf /var/cache/apk/* \ |
|
||||
|
RUN chmod +x /usr/local/bin/supw |
||||
|
RUN apk add --update ca-certificates \ |
||||
|
&& rm -rf /var/cache/apk/* \ |
||||
&& chown -R mumble:mumble /etc/mumble /opt/mumble |
&& chown -R mumble:mumble /etc/mumble /opt/mumble |
||||
|
|
||||
# Expose ports |
|
||||
EXPOSE 64738 64738/udp |
EXPOSE 64738 64738/udp |
||||
|
|
||||
# Set running user |
|
||||
USER mumble |
USER mumble |
||||
|
|
||||
# Set volumes |
|
||||
VOLUME /etc/mumble |
VOLUME /etc/mumble |
||||
|
|
||||
# Default command |
|
||||
CMD ["/opt/mumble/murmur.x86", "-fg", "-ini", "/etc/mumble/config.ini"] |
CMD ["/opt/mumble/murmur.x86", "-fg", "-ini", "/etc/mumble/config.ini"] |
@ -1,7 +1,8 @@ |
|||||
IMAGE_NAME="phlak/mumble" |
|
||||
|
IMAGE_NAME="sothr/mumble" |
||||
IMAGE_TAG="$$(grep 'ARG MUMBLE_VERSION' Dockerfile | awk -F = '{print $$2}')" |
IMAGE_TAG="$$(grep 'ARG MUMBLE_VERSION' Dockerfile | awk -F = '{print $$2}')" |
||||
|
|
||||
build: |
build: |
||||
|
@echo "${IMAGE_TAG}" > tag |
||||
@docker build --force-rm --pull --tag $(IMAGE_NAME):$(IMAGE_TAG) . |
@docker build --force-rm --pull --tag $(IMAGE_NAME):$(IMAGE_TAG) . |
||||
|
|
||||
purge: |
purge: |
||||
|
@ -0,0 +1,40 @@ |
|||||
|
--- |
||||
|
resources: |
||||
|
- name: git-resource |
||||
|
type: git |
||||
|
icon: git |
||||
|
source: |
||||
|
uri: https://git.nulloctet.com/docker/mumble.git |
||||
|
tag_filter: '*[0-9].*[0-9].*[0-9]*(-rc*(.*[0-9]))' |
||||
|
- name: git-resource-image-nexus |
||||
|
type: docker-image |
||||
|
icon: docker |
||||
|
source: |
||||
|
repository: ((nexus_docker_write.host))/sothr/mumble |
||||
|
username: ((nexus_docker_write.username)) |
||||
|
password: ((nexus_docker_write.password)) |
||||
|
- name: git-resource-image |
||||
|
type: docker-image |
||||
|
icon: docker |
||||
|
source: |
||||
|
repository: sothr/mumble |
||||
|
username: ((hub_docker_write.username)) |
||||
|
password: ((hub_docker_write.password)) |
||||
|
|
||||
|
jobs: |
||||
|
- name: build-image |
||||
|
plan: |
||||
|
- get: git-resource |
||||
|
trigger: true |
||||
|
- put: git-resource-image-nexus |
||||
|
params: |
||||
|
build: git-resource |
||||
|
tag_file: git-resource/.git/ref |
||||
|
tag_as_latest: true |
||||
|
get_params: {skip_download: true} |
||||
|
- put: git-resource-image |
||||
|
params: |
||||
|
build: git-resource |
||||
|
tag_file: git-resource/.git/ref |
||||
|
tag_as_latest: true |
||||
|
get_params: {skip_download: true} |
@ -0,0 +1,11 @@ |
|||||
|
#!/usr/bin/env bash |
||||
|
|
||||
|
TEAM=docker |
||||
|
PIPELINE=mumble |
||||
|
|
||||
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" |
||||
|
pushd "${DIR}" |
||||
|
|
||||
|
fly -t ${TEAM} set-pipeline --pipeline ${PIPELINE} --config pipeline.yml |
||||
|
|
||||
|
popd |
Write
Preview
Loading…
Cancel
Save
Reference in new issue