Skip to content

Commit 9d30892

Browse files
committed
Merge branch 'master' of github.com:SemsProject/CombineArchiveWeb
2 parents 962c336 + a614ee4 commit 9d30892

3 files changed

Lines changed: 73 additions & 15 deletions

File tree

Dockerfile

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
FROM tomcat:latest
2+
MAINTAINER martin scharm
3+
4+
COPY src /srv/src
5+
COPY pom.xml /srv/pom.xml
6+
COPY src/main/docker/CombineArchiveWeb-DockerContext.xml /usr/local/tomcat/conf/Catalina/localhost/ROOT.xml
7+
WORKDIR /srv/
8+
9+
# install dependencies, compile the code, and get rid of dependencies...
10+
RUN deps="maven openjdk-${JAVA_VERSION%%[-~bu]*}-jdk=$JAVA_DEBIAN_VERSION" \
11+
&& apt-get update \
12+
&& apt-get install -y --no-install-recommends $deps \
13+
&& mvn package \
14+
&& cp target/*war /usr/local/tomcat/webapps/ROOT.war \
15+
&& mvn clean \
16+
&& rm -rf /usr/local/tomcat/webapps/ROOT \
17+
&& rm -rf /root/.m2 /usr/share/doc \
18+
&& apt-get purge -y --auto-remove $deps \
19+
&& apt-get clean \
20+
&& rm -rf /var/lib/apt/lists/*
21+
22+

README.md

Lines changed: 50 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,67 @@
1-
# webCAT
2-
This webapplication is a part of the [CombineArchiveToolkit](https://sems.uni-rostock.de/projects/combinearchive/), a selection of tools to
3-
create, modify, and share CombineArchives.
4-
Find more information on how to build and deploy it on the [project page](https://sems.uni-rostock.de/trac/combinearchive-web).
1+
# WebCAT
2+
3+
The [CombineArchive](http://co.mbine.org/standards/omex) is a zip like format to bundle latest research files and annotate them with meta data. The [CombineArchive WebInterface (WebCAT)](https://github.com/SemsProject/CombineArchiveWeb) is a web based user interface to create, modify, and share CombineArchives. No need for registration. No database. Just start using the web interface!
4+
5+
## Build and Run
6+
7+
You will find detailed information on how to build and deploy the web application on the [project page](https://sems.uni-rostock.de/trac/combinearchive-web).
8+
9+
10+
11+
## Docker
12+
13+
There is a Docker image available at [binfalse/webcat](https://hub.docker.com/r/binfalse/webcat/). It is configured to automatically build the latest version of the application based on the [Dockerfile](Dockerfile) included in this repository. In addition, we compile every version of the application in a tagged Docker image [through maven](https://binfalse.de/2016/05/31/mvn-automagically-create-a-docker-image/).
14+
15+
Run a Docker container as:
16+
17+
docker run -it --rm -p 1234:8080 binfalse/webcat:latest
18+
19+
This will start the Tomcat web server and bind the host's port `1234` to the containers port `8080`, which Tomcat listens at. It will permanently dump Tomcat's catalina output log.
20+
21+
As soon as the container is up and running you should be able to access the CombineArchive web interface at http://localhost:1234
22+
23+
### Save Workspaces and COMBINE archives
24+
The above command will destroy all archives and workspaces as soon as you stop/reboot the container.
25+
It's however also possible to mount persistent storage into the container. Let's say you want to save everything at the host's `/storage/for/webcat`, then you can just mount that into the container using:
26+
27+
docker run --rm -it -p 1234:8080 -v /storage/for/webcat:/srv/CombineArchiveWeb binfalse/webcat:latest
28+
29+
After creating a COMBINE archive in WebCAT you'll find it on the host machine in `/storage/for/webcat/WORKSPACE/ARCHIVE`.
30+
31+
### Modify the Settings of WebCAT
32+
WebCAT's settings are configured using a tomcat-style `context.xml`. The [context that is deployed by default is available from the git repository,](https://github.com/binfalse/CombineArchiveWeb/blob/master/src/main/docker/CombineArchiveWeb-DockerContext.xml) you may use that as a template.
33+
34+
To change that configuration you can either mount a directory containing a file called `ROOT.xml` with an alternative configuration to the container's `/usr/local/tomcat/conf/Catalina/localhost/` directory :
35+
36+
docker run --rm -it -p 1234:8080 -v /storage/dir/with/other/context:/usr/local/tomcat/conf/Catalina/localhost/ binfalse/webcat:latest
37+
38+
Or you create a new image based on this one, which overwrites the configuration with your `context.xml`.
39+
40+
41+
542

643
## Demo
744
A demo is currently hosted on our server. *No need for registration!*
845
[Just start to explore](http://webcat.sems.uni-rostock.de)
946

47+
48+
1049
## Development
1150
The development is currently coordinated at our [trac project management](https://sems.uni-rostock.de/trac/combinearchive-web).
1251

52+
53+
1354
## Additional Resources
1455
Some helpful resources can be found in the resources folder. It contains a default context configuration for tomcat, a default
1556
VHost configuration for the Apache WebServer and a folder called "nagios" containing a simple python3 script for nagios, to
1657
check if the webCAT instance is up and running. In case a stats secret is provided (and configured in the python script) it
1758
also checks for the maximum space quota.
1859

60+
61+
## Request for comments
62+
We are always keen on getting feedback from our users. If you have any comments, requests for features, or experience any problems [do not hesitate to leave a comment.](https://github.com/SemsProject/CombineArchiveWeb/issues/new)
63+
64+
1965
## Licence
2066
CombineArchiveWeb - a WebInterface to read/create/write/manipulate/... COMBINE archives
2167
Copyright (C) 2014-2016:

pom.xml

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@
179179
<extension>
180180
<groupId>org.apache.maven.wagon</groupId>
181181
<artifactId>wagon-ssh</artifactId>
182-
<version>1.0-beta-7</version>
182+
<version>2.10</version>
183183
</extension>
184184
</extensions>
185185
<resources>
@@ -310,16 +310,6 @@
310310
<arg value="push" />
311311
<arg value="binfalse/webcat:${project.version}" />
312312
</exec>
313-
<exec executable="docker">
314-
<arg value="tag" />
315-
<arg value="-f" />
316-
<arg value="binfalse/webcat:${project.version}" />
317-
<arg value="binfalse/webcat:latest" />
318-
</exec>
319-
<exec executable="docker">
320-
<arg value="push" />
321-
<arg value="binfalse/webcat:latest" />
322-
</exec>
323313
</target>
324314
</configuration>
325315
<goals>

0 commit comments

Comments
 (0)