diff --git a/README.md b/README.md index 340c9985..743d13a7 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,2 @@ -This repository contains the various Dockerfile definitions I'm maintaining. - -[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/itzg/dockerfiles?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) - -### Images that are discontinued - -##### Cassandra - -I have found the [official image](https://hub.docker.com/_/cassandra/) to be quite sufficient - -##### ELK Stack (Elasticsearch, Logstash, Kibana) - -Each of the ELK components is now well supported by Elastic and the images here fell way -behind the latest upstream releases. \ No newline at end of file +This repository contains a [Minecraft Server image](minecraft-server). \ No newline at end of file diff --git a/build b/build index 90b0deb5..c9435602 100644 --- a/build +++ b/build @@ -1,8 +1,6 @@ #!/bin/bash -pkgs=ubuntu-openjdk-7 pkgs="$pkgs minecraft-server" -pkgs="$pkgs titan-gremlin" for p in $pkgs do diff --git a/gitblit/Dockerfile b/gitblit/Dockerfile deleted file mode 100644 index 5550a0f9..00000000 --- a/gitblit/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -FROM java:8 - -LABEL maintainer "itzg" - -ENV GITBLIT_VERSION 1.7.1 - -RUN wget -qO /tmp/gitblit.tgz http://dl.bintray.com/gitblit/releases/gitblit-$GITBLIT_VERSION.tar.gz - -RUN tar -C /opt -xvf /tmp/gitblit.tgz && \ - rm /tmp/gitblit.tgz - -VOLUME ["/data"] - -ADD start.sh /start - -ENV GITBLIT_PATH=/opt/gitblit-${GITBLIT_VERSION} \ - GITBLIT_HTTPS_PORT=443 \ - GITBLIT_HTTP_PORT=80 \ - GITBLIT_BASE_FOLDER=/data \ - GITBLIT_ADMIN_USER=admin \ - GITBLIT_INITIAL_REPO= -WORKDIR $GITBLIT_PATH - -EXPOSE 80 443 - -ENTRYPOINT ["/start"] diff --git a/gitblit/README.md b/gitblit/README.md deleted file mode 100644 index 90004275..00000000 --- a/gitblit/README.md +++ /dev/null @@ -1,46 +0,0 @@ -Provides a ready-to-use instance of [GitBlit](http://gitblit.com/). - -## Basic usage - -Start the GitBlit container using - - docker run -d -p 80:80 -p 443:443 --name gitblit itzg/gitblit - -Access its web interface at the mapped HTTP (80) or HTTPS (443) port of the -Docker host. Login with the default credentials __admin__ / __admin__ . - - -## Data volume - -In order to allow for future upgrades, run the container with a volume mount of `/data`, such as: - - -v /tmp/gitblit-data:/data - -## Initial repository creation - -As a convenience for cluster configuration management with git -(such as with [Spring Cloud Config](https://cloud.spring.io/spring-cloud-config/)), -you may specify the name of an initial repository to be owned by the 'admin' user. -This can be enabled by passing the name of that repository via the environment -variable `GITBLIT_INITIAL_REPO`, such as - - -e GITBLIT_INITIAL_REPO=default - -## Create repositories with content - -In addition to the approach above, you can push repostories with existing -content by attaching them to sub-directories of `/repos`, such as - - docker run -v $HOME/git/example:/repos/example ... - -## Custom configuration - -You can add or override any of the `*.properties` files for configuring GitBlit, -typically `gitblit.properties`, by placing those files in a volume attached at -`/config`, such as - - -v $(pwd)/extra-config:/config - -The property files in that configuration directory will be renamed with the -suffix `.applied` to avoid overwriting manually modified configuration on -the next container startup. diff --git a/gitblit/start.sh b/gitblit/start.sh deleted file mode 100644 index 1892e2be..00000000 --- a/gitblit/start.sh +++ /dev/null @@ -1,103 +0,0 @@ -#!/bin/bash - -apply_base_data() { - contents=`ls $GITBLIT_BASE_FOLDER|wc -l` - - if [ $contents = "0" ]; then - cp -r $GITBLIT_PATH/data/* $GITBLIT_BASE_FOLDER - fi -} - -apply_config() { - cp -rf /config/* $GITBLIT_BASE_FOLDER -} - -create_repo() { - local repo_dir=$GITBLIT_BASE_FOLDER/git/$1.git - mkdir -p $repo_dir - cd $repo_dir - - git init --bare - - echo " -[gitblit] - description = - originRepository = - owner = $GITBLIT_ADMIN_USER - acceptNewPatchsets = true - acceptNewTickets = true - mergeTo = master - useIncrementalPushTags = false - allowForks = true - accessRestriction = PUSH - authorizationControl = AUTHENTICATED - verifyCommitter = false - showRemoteBranches = false - isFrozen = false - skipSizeCalculation = false - skipSummaryMetrics = false - federationStrategy = FEDERATE_THIS - isFederated = false - gcThreshold = - gcPeriod = 0 -" >> config - - git config --replace-all core.logallrefupdates false - - echo " -CREATING repository '$1' with: -* read/clone access for all -* push access for authenticated users" - - RET="file://$repo_dir" -} - -apply_repos() { - for rdir in /repos/*; do - if [ -e $rdir/.git ]; then - r=$(basename $rdir) - create_repo $r - local url=$RET - cd $rdir - echo "* pushed existing content" - git push --all $url - fi - - done -} - -create_initial_repo() { - if [ -d $GITBLIT_INITIAL_REPO ]; then - return - fi - - create_repo $GITBLIT_INITIAL_REPO -} - -shopt -s nullglob -if [ ! -f /var/local/gitblit_firststart ]; then - FIRSTSTART=1 -else - FIRSTSTART=0 -fi - -if [ $FIRSTSTART = 1 ]; then - apply_base_data - - echo " -Applying configuration from /config -" - apply_config - touch /var/local/gitblit_firststart -fi - - -if [[ -n $GITBLIT_INITIAL_REPO ]]; then - create_initial_repo -fi -apply_repos - -cd $GITBLIT_PATH -$JAVA_HOME/bin/java -jar $GITBLIT_PATH/gitblit.jar \ - --httpsPort $GITBLIT_HTTPS_PORT --httpPort $GITBLIT_HTTP_PORT \ - --baseFolder $GITBLIT_BASE_FOLDER diff --git a/jekyll-github-pages/.gitignore b/jekyll-github-pages/.gitignore deleted file mode 100644 index c9490a53..00000000 --- a/jekyll-github-pages/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/site diff --git a/jekyll-github-pages/Dockerfile b/jekyll-github-pages/Dockerfile deleted file mode 100644 index e767f9a3..00000000 --- a/jekyll-github-pages/Dockerfile +++ /dev/null @@ -1,23 +0,0 @@ -FROM ubuntu:trusty - -LABEL maintainer "itzg" - -ENV APT_GET_UPDATE 2014-09-18 - -RUN apt-get update -RUN apt-get -y upgrade - -RUN apt-get -y install ruby ruby-dev make patch nodejs -RUN gem install bundler - -ADD Gemfile /tmp/Gemfile -WORKDIR /tmp -RUN bundle install - -ADD template /site-template - -VOLUME ["/site"] -EXPOSE 4000 - -ADD start.sh /start -CMD ["/start"] diff --git a/jekyll-github-pages/Gemfile b/jekyll-github-pages/Gemfile deleted file mode 100644 index 053c27dc..00000000 --- a/jekyll-github-pages/Gemfile +++ /dev/null @@ -1,2 +0,0 @@ -source 'https://rubygems.org' -gem 'github-pages' diff --git a/jekyll-github-pages/README.md b/jekyll-github-pages/README.md deleted file mode 100644 index 26e3739d..00000000 --- a/jekyll-github-pages/README.md +++ /dev/null @@ -1,14 +0,0 @@ -This container is pre-configured according to the -[GitHub Pages use of Jekyll](https://help.github.com/articles/using-jekyll-with-pages). - -It serves up the generated content on port 4000 and the site is generated from -the container's `/site` volume. You can either bring your own site content or -let it generate some VERY simple content along with the standard Jekyll directory -layout. - -A typical way to run this: - - docker run -it -p 4000:4000 -v $(pwd)/site:/site itzg/jekyll-github-pages - -where either it will load your content or initialize the content under -`site` in your current working directory. diff --git a/jekyll-github-pages/start.sh b/jekyll-github-pages/start.sh deleted file mode 100644 index 91e22011..00000000 --- a/jekyll-github-pages/start.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -if [ `ls /site/index.* 2> /dev/null | wc -l` = 0 ]; then - echo "Preparing /site with default content..." - cp -r /site-template/* /site -fi - -if [ ! -e /site/Gemfile ]; then - cp /tmp/Gemfile /site/Gemfile -fi - -cd /site -bundle exec jekyll serve diff --git a/jekyll-github-pages/template/_config.yml b/jekyll-github-pages/template/_config.yml deleted file mode 100644 index eb962074..00000000 --- a/jekyll-github-pages/template/_config.yml +++ /dev/null @@ -1 +0,0 @@ -highlighter: pygments diff --git a/jekyll-github-pages/template/_includes/footer.html b/jekyll-github-pages/template/_includes/footer.html deleted file mode 100644 index a671ded0..00000000 --- a/jekyll-github-pages/template/_includes/footer.html +++ /dev/null @@ -1,3 +0,0 @@ - diff --git a/jekyll-github-pages/template/_includes/header.html b/jekyll-github-pages/template/_includes/header.html deleted file mode 100644 index 023b7e80..00000000 --- a/jekyll-github-pages/template/_includes/header.html +++ /dev/null @@ -1,3 +0,0 @@ -
-

{{ page.title }}

-
diff --git a/jekyll-github-pages/template/_includes/top.html b/jekyll-github-pages/template/_includes/top.html deleted file mode 100644 index 58e30d2c..00000000 --- a/jekyll-github-pages/template/_includes/top.html +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - {{ page.title }} - - - - - - - - - - diff --git a/jekyll-github-pages/template/_layouts/default.html b/jekyll-github-pages/template/_layouts/default.html deleted file mode 100644 index a25c7190..00000000 --- a/jekyll-github-pages/template/_layouts/default.html +++ /dev/null @@ -1,12 +0,0 @@ -{% include top.html %} - - - - {% include header.html %} - - {{ content }} - - {% include footer.html %} - - - diff --git a/jekyll-github-pages/template/index.html b/jekyll-github-pages/template/index.html deleted file mode 100644 index 99058d93..00000000 --- a/jekyll-github-pages/template/index.html +++ /dev/null @@ -1,6 +0,0 @@ ---- -layout: default -title: Powered by Jekyll -overview: true ---- -This is where the content goes. diff --git a/jenkins/Dockerfile b/jenkins/Dockerfile deleted file mode 100644 index e13edbfc..00000000 --- a/jenkins/Dockerfile +++ /dev/null @@ -1,17 +0,0 @@ -FROM java:openjdk-8u102-jdk - -LABEL maintainer "itzg" - -RUN apt-get update && \ - DEBIAN_FRONTEND=noninteractive apt-get install -y \ - graphviz \ - && apt-get clean - -ENV JENKINS_HOME=/data - -VOLUME ["/data", "/root", "/opt/jenkins"] -EXPOSE 8080 38252 - -COPY download-and-start.sh /opt/download-and-start - -CMD ["/opt/download-and-start"] diff --git a/jenkins/README.md b/jenkins/README.md deleted file mode 100644 index c8f6df69..00000000 --- a/jenkins/README.md +++ /dev/null @@ -1,51 +0,0 @@ -A self-upgrading [Jenkins CI](http://jenkins-ci.org/) server - -# Basic Usage - -To start Jenkins with the latest version: - - ID=$(docker run -d -p 8080:8080 itzg/jenkins) - -At a later time, you can upgrade by restarting the container: - - docker stop $ID - docker start $ID - -# Attaching host directory to Jenkins home directory - -The Jenkins home directory is attachable at `/data`, so attaching to a host volume -would be: - - ID=$(docker run -d -p 8080:8080 -v /SOME_HOST_DIR:/data itzg/jenkins - -# Enabling Jenkins slave agents - -By default, Jenkins will pick a random port to allow slave nodes launched -by JNLP. Since Docker networking is basically a firewall, a random port -won't work for us. Instead the fixed port **38252** was chosen (arbitrarily) -to be exposed by the container. - -Launch your Jenkins container using - - ID=$(docker run -d -p 8080:8080 -p 38252:38252 itzg/jenkins) - -and configure the port in the Global Security settings: - -![](http://i.imgur.com/PhQiEHy.png) - -# Image Parameters - -## Volumes - -* `/data` - a majority of the Jenkins content is maintained here, such as workspaces -* `/root` - some tools, such as Maven, utilize the home directory for default repository storage -* `/opt/jenkins` - the installed distribution is expanded here - -## Ports - -* `8080` - for the web UI -* `38252` - for slave incoming JMX access - -## Environment Variables - -* `JENKINS_OPTS` - passed to the initial Java invocation of Jenkins diff --git a/jenkins/download-and-start.sh b/jenkins/download-and-start.sh deleted file mode 100644 index 6cb7f32e..00000000 --- a/jenkins/download-and-start.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -mirrorUrl=http://mirrors.jenkins-ci.org/war/latest/jenkins.war -url=$(curl -s --head $mirrorUrl|awk -F': ' '$1 == "Location" { print $2 }' | sed 's/[[:space:]]*$//') -version=$(echo $url | sed 's#.*/war/\(.*\)/jenkins.war#\1#') - -mkdir -p /opt/jenkins -trackingFile=/opt/jenkins/INSTALLED - -installed= -if [ -f $trackingFile ]; then - installed=$(cat $trackingFile) - echo "Version installed is $installed" -fi - -if [ $version != "$installed" ]; then - echo "Downloading $version from '$url'" - while ! curl -s -o /opt/jenkins/jenkins.war "$url" - do - echo "Trying again in 5 seconds" - sleep 5 - done - - echo $version > $trackingFile -fi - - -cd /opt/jenkins -exec java $JENKINS_OPTS -jar jenkins.war diff --git a/titan-gremlin/Dockerfile b/titan-gremlin/Dockerfile deleted file mode 100644 index 49104247..00000000 --- a/titan-gremlin/Dockerfile +++ /dev/null @@ -1,17 +0,0 @@ -FROM openjdk:8-jre - -LABEL maintainer "itzg" - -ENV TITAN_VERSION 0.5.4 - -ADD http://s3.thinkaurelius.com/downloads/titan/titan-$TITAN_VERSION-hadoop2.zip /tmp/titan.zip -RUN unzip -q /tmp/titan.zip -d /opt && \ - rm /tmp/titan.zip - -ENV TITAN_HOME /opt/titan-$TITAN_VERSION-hadoop2 -WORKDIR $TITAN_HOME - -VOLUME ["/conf","/data"] -ADD start-gremlin.sh /opt/start-gremlin.sh - -CMD ["/opt/start-gremlin.sh"] diff --git a/titan-gremlin/README.md b/titan-gremlin/README.md deleted file mode 100644 index 62934819..00000000 --- a/titan-gremlin/README.md +++ /dev/null @@ -1,63 +0,0 @@ -Runs the Gremlin console from the Titan Graph Database's "all" distribution. - -# Basic Usage - -To start the Gremlin console with the default configuration files available: - - docker run -it itzg/titan-gremlin - -In order to adjust or further define property files to use within Gremlin, -attach a host directory to the container's `/conf` such as - - docker run -it -v $(pwd)/conf:/conf itzg/titan-gremlin - -After running once your host directory will be populated with the distribution-default -configuration files. Modify those or add to them and they will be available during -the next time you (re)start your container. - -# Connecting to Cassandra and Elasticsearch Containers - -First start containers for Cassandra and Elasticsearch (pre-2.x), -where the `--name` you choose can be arbitrary or left off to use a generated name. - - docker run -d --name gremlin-cass itzg/cassandra - docker run -d --name gremlin-es itzg/elasticsearch:1.x - -Now start Gremlin with networking links to those containers with the aliases - -* `--link :cass` -* `--link :es` - -such as - - docker run -it --rm --link gremlin-cass:cass --link gremlin-es:es itzg/titan-gremlin - -and with that you can follow the -[Graph of the Gods example](http://s3.thinkaurelius.com/docs/titan/current/getting-started.html), such as - - gremlin> GraphOfTheGodsFactory.load(g) - gremlin> saturn = g.V.has('name','saturn').next() - ==>v[256] - gremlin> saturn.map() - ==>name=saturn - ==>age=10000 - gremlin> saturn.in('father').in('father').name - ==>hercules - -# Running and Connecting with Docker Compose - -Create the following Compose content as the file `docker-compose.yml` and in -that directory invoke `docker-compose run titan` to run the Gremlin shell -with the supporting Elasticsearch and Cassandra containers. - -``` -titan: - image: itzg/titan-gremlin - links: - - cass - - es -cass: - image: itzg/cassandra -es: - image: itzg/elasticsearch:1.x -``` diff --git a/titan-gremlin/start-gremlin.sh b/titan-gremlin/start-gremlin.sh deleted file mode 100644 index 3b1da906..00000000 --- a/titan-gremlin/start-gremlin.sh +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/bash - -args= - -if [ $(ls /conf|wc -l) = 0 ]; then - cp -r $TITAN_HOME/conf/* /conf -fi - -rm -f /tmp/titan.properties - -if [ -n "$CASS_PORT_9160_TCP_ADDR" ]; then - - shortcut=/tmp/titan.properties - cat >> /tmp/titan.properties <> /tmp/titan.properties <> /tmp/titan.properties <> /tmp/titan.properties <> /tmp/titan.properties < /tmp/init.groovy <.*#http://$PUBLISH_ADDR#" /config/rexster.xml -fi - -if [ -n "$SCRIPT" ]; then - echo "Running Gremlin script $SCRIPT from /scripts..." - gremlin -e /scripts/$SCRIPT -fi - -echo "Starting Rexster..." -/opt/rexster-server/bin/rexster.sh $* diff --git a/titandb/rexster.xml b/titandb/rexster.xml deleted file mode 100644 index 1730a82b..00000000 --- a/titandb/rexster.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - http://localhost - - - - titan - com.thinkaurelius.titan.tinkerpop.rexster.TitanGraphConfiguration - /data/persistit - false - - persistit - /data/persistit - 5000 - elasticsearch - true - false - /data/es - - - - tp:gremlin - - - - - diff --git a/titandb/scripts/GraphOfTheGods.groovy b/titandb/scripts/GraphOfTheGods.groovy deleted file mode 100644 index 25d2f8f8..00000000 --- a/titandb/scripts/GraphOfTheGods.groovy +++ /dev/null @@ -1,7 +0,0 @@ -import com.thinkaurelius.titan.core.TitanFactory -import com.thinkaurelius.titan.example.GraphOfTheGodsFactory - -def g = TitanFactory.open('conf/titan.properties') -GraphOfTheGodsFactory.load(g) - -g.shutdown() diff --git a/titandb/titan.properties b/titandb/titan.properties deleted file mode 100644 index dc5254fc..00000000 --- a/titandb/titan.properties +++ /dev/null @@ -1,8 +0,0 @@ -storage.backend=persistit -storage.directory=/data/persistit -storage.buffercount=5000 - -storage.index.search.backend=elasticsearch -storage.index.search.local-mode=true -storage.index.search.client-only=false -storage.index.search.directory=/data/es diff --git a/ubuntu-openjdk-7/Dockerfile b/ubuntu-openjdk-7/Dockerfile deleted file mode 100644 index f0088450..00000000 --- a/ubuntu-openjdk-7/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM ubuntu:trusty - -LABEL maintainer "itzg" - -ENV APT_GET_UPDATE 2015-10-29 -RUN apt-get update -RUN DEBIAN_FRONTEND=noninteractive \ - apt-get -q -y install openjdk-7-jre-headless wget unzip \ - && apt-get clean - -ENV JAVA_HOME /usr/lib/jvm/java-7-openjdk-amd64 diff --git a/ubuntu-openjdk-7/README.md b/ubuntu-openjdk-7/README.md deleted file mode 100644 index 6843088e..00000000 --- a/ubuntu-openjdk-7/README.md +++ /dev/null @@ -1 +0,0 @@ -Provides the latest OpenJDK JRE on top of Ubuntu Trusty (14.04).