Skip to content

Commit

Permalink
Merge pull request #34 from fcrepo4-labs/fedora5-rc1
Browse files Browse the repository at this point in the history
Fedora 5.0.0 docker release
  • Loading branch information
dbernstein authored Jan 18, 2019
2 parents b6ddc09 + f1b835c commit eb93b95
Show file tree
Hide file tree
Showing 134 changed files with 238 additions and 54 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.DS_Store
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
98 changes: 98 additions & 0 deletions Fedora4/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# Fedora 4 Docker Repo

This is the Git repo of the Docker image for [Fedora 4 docker](https://hub.docker.com/r/yinlinchen/fcrepo4-docker/). Please see the [Hub page](https://hub.docker.com/r/yinlinchen/fcrepo4-docker/) for the full readme on how to use the Docker image and for information regarding contributing and issues.

## Requirements

* [Docker](https://www.docker.com/)

## Usage
Run Fedora with a file-based objects database (Default Fcrepo 4.7.5):
```
# Start server
docker-compose up -d
# Shutdown server
docker-compose down
```

Run Fedora with a MySQL database:
```
# Start server
docker-compose -f fcrepo-mysql.yml up -d
# Shutdown server
docker-compose -f fcrepo-mysql.yml down
```

Run Fedora with a PostgreSQL database:
```
# Start server
docker-compose -f fcrepo-postgres.yml up -d
# Shutdown server
docker-compose -f fcrepo-postgres.yml down
```

Fedora [Dockerfile](docker/services/fcrepo/Dockerfile)

Run Fedora with Solr, Karaf, Fuseki, and Fcrepo-camel-toolbox
1. `docker pull yinlinchen/fcrepo4-docker`
2. `docker run -it -p 8080:8080 -d yinlinchen/fcrepo4-docker:4.7.5`
3. Use `docker ps` to check the "CONTAINER ID" and "STATUS". The container should be ready to use after 5 minutes.

You can shell into the machine with `docker exec -i -t "CONTAINER ID" /bin/bash`

## In this Docker image, see detail in [Dockerfile](Dockerfile)

* Ubuntu 14.04 64-bit machine with:
* [Tomcat 8.0.53](https://tomcat.apache.org) at [http://localhost:8080](http://localhost:8080)
* Manager username = "fedora4", password = "fedora4"
* [Fedora 4.7.5](https://wiki.duraspace.org/display/FF/Downloads) at [http://localhost:8080/fcrepo](http://localhost:8080/fcrepo)
* No authentication configured
* [Solr 4.10.3](https://lucene.apache.org/solr/) at [http://localhost:8080/solr](http://localhost:8080/solr), for indexing & searching your content.
* Installed in "/usr/local/tomcat7/solr"
* [Apache Karaf 4.0.5](http://karaf.apache.org/)
Installed in /opt/karaf
Installed as a service apache-karaf
* [Fuseki 2.3.1](https://jena.apache.org/documentation/serving_data/index.html) at [http://localhost:8080/fuseki](http://localhost:8080/fuseki), for querying and updating.
* Installed in "/etc/fuseki"
* Dataset Path name "/test"
* Persistent storage "/etc/fuseki/databases/test_data"
* [Fcrepo-camel-toolbox 4.7.2](https://github.com/fcrepo4-labs/fcrepo-camel-toolbox)
* Installed in Tomcat container

ps. MacOS: docker is configured to use the default machine with IP e.g. 192.168.99.100 or 127.0.0.1, the Fedora 4 URL is either [http://192.168.99.100:8080/fcrepo](http://192.168.99.100:8080/fcrepo) or [http://127.0.0.1/fcrepo](http://127.0.0.1/fcrepo). You can use "docker-machine ip" to see your docker machine IP.


## Fedora Configuration
The default Docker build is Fedora 4 without WebAC and Audit capability.
```
docker build -t="tag-default" .
```

To enable Fedora 4 with WebAC enabled.
```
docker build --build-arg FedoraConfig=webac- --build-arg ModeshapeConfig=servlet-auth -t="tag-webac" .
```
Three Fedora user accounts are available:
* user account testuser, with password password1
* user account adminuser, with password password2
* admin account fedoraAdmin with the password secret3

To enable Fedora 4 with Audit capability.
```
docker build --build-arg FedoraConfig=audit- -t="tag-audit" .
```

To enable Fedora 4 with WebAC and Audit capability.
```
docker build --build-arg FedoraConfig=webac-audit- --build-arg ModeshapeConfig=servlet-auth -t="tag-webac-audit" .
```

## Maintainers

Current maintainers:

* [Yinlin Chen](https://github.com/yinlinchen)
* [Paul Mather](https://github.com/pmather)
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
25 changes: 25 additions & 0 deletions Fedora4/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
version: "3.6"

networks:
appnetwork:
driver: bridge

services:
fcrepo:
container_name: fcrepo
build:
context: ./docker/services/fcrepo
args:
FEDORA_VERSION: 4.7.5
FEDORA_TAG: 4.7.5
image: fcrepo
networks:
appnetwork:
aliases:
- fcrepo.docker.local
ports:
- 8080:8080




30 changes: 30 additions & 0 deletions Fedora4/docker/services/fcrepo/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
FROM tomcat:8.0-jre8

MAINTAINER Yinlin Chen "ylchen@vt.edu"

RUN apt-get update && apt-get -y upgrade

# Install Fedora4
ARG FEDORA_VERSION=4.7.5
ARG FEDORA_TAG=4.7.5
ARG FedoraConfig=
ARG ModeshapeConfig=file-simple
ARG JDBCConfig=

ENV CATALINA_HOME /usr/local/tomcat
ENV PATH $CATALINA_HOME/bin:$PATH

RUN mkdir /mnt/ingest

RUN sed -i '$i<role rolename="fedoraUser"/>$i<role rolename="fedoraAdmin"/>$i<role rolename="manager-gui"/>$i<user username="testuser" password="password1" roles="fedoraUser"/>$i<user username="adminuser" password="password2" roles="fedoraUser"/>$i<user username="fedoraAdmin" password="secret3" roles="fedoraAdmin"/>$i<user username="fedora4" password="fedora4" roles="manager-gui"/>' /usr/local/tomcat/conf/tomcat-users.xml

RUN echo 'JAVA_OPTS="$JAVA_OPTS -Dfcrepo.modeshape.configuration=classpath:/config/'$ModeshapeConfig'/repository.json '$JDBCConfig' -Dfcrepo.home=/mnt/ingest -Dfcrepo.audit.container=/audit"' > $CATALINA_HOME/bin/setenv.sh \
&& chmod +x $CATALINA_HOME/bin/setenv.sh

RUN cd /tmp \
&& curl -fSL https://github.com/fcrepo4/fcrepo4/releases/download/fcrepo-$FEDORA_TAG/fcrepo-webapp-$FEDORA_TAG.war -o fcrepo.war \
&& cp fcrepo.war /usr/local/tomcat/webapps/fcrepo.war

WORKDIR /usr/local/tomcat

EXPOSE 8080
36 changes: 36 additions & 0 deletions Fedora4/fcrepo-mysql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
version: "3.6"

networks:
appnetwork:
driver: bridge

services:
fcrepo:
container_name: fcrepo
build:
context: ./docker/services/fcrepo
args:
FEDORA_VERSION: 4.7.5
FEDORA_TAG: 4.7.5
ModeshapeConfig: jdbc-mysql
JDBCConfig: -Dfcrepo.mysql.username=fcrepoadmin -Dfcrepo.mysql.password=fcrepoadminpw -Dfcrepo.mysql.host=mysql.docker.local -Dfcrepo.mysql.port=3306
image: fcrepo
networks:
appnetwork:
aliases:
- fcrepo.docker.local
ports:
- 8080:8080
mysql:
container_name: mysql
image: mysql:5
networks:
appnetwork:
aliases:
- mysql.docker.local
environment:
MYSQL_ROOT_PASSWORD: secret-pw
MYSQL_USER: fcrepoadmin
MYSQL_PASSWORD: fcrepoadminpw
MYSQL_DATABASE: fcrepo

34 changes: 34 additions & 0 deletions Fedora4/fcrepo-postgres.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
version: "3.6"

networks:
appnetwork:
driver: bridge

services:
fcrepo:
container_name: fcrepo
build:
context: ./docker/services/fcrepo
args:
FEDORA_VERSION: 4.7.5
FEDORA_TAG: 4.7.5
ModeshapeConfig: jdbc-postgresql
JDBCConfig: -Dfcrepo.postgresql.username=fcrepoadmin -Dfcrepo.postgresql.password=fcrepoadminpw -Dfcrepo.postgresql.host=postgres.docker.local -Dfcrepo.postgresql.port=5432
image: fcrepo
networks:
appnetwork:
aliases:
- fcrepo.docker.local
ports:
- 8080:8080
postgres:
container_name: postgres
image: postgres:9
networks:
appnetwork:
aliases:
- postgres.docker.local
environment:
POSTGRES_USER: fcrepoadmin
POSTGRES_PASSWORD: fcrepoadminpw
POSTGRES_DB: fcrepo
File renamed without changes.
File renamed without changes.
54 changes: 7 additions & 47 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# Fedora 4 Docker Repo
# Fedora 5 Docker Repo

This is the Git repo of the Docker image for [Fedora 4 docker](https://hub.docker.com/r/yinlinchen/fcrepo4-docker/). Please see the [Hub page](https://hub.docker.com/r/yinlinchen/fcrepo4-docker/) for the full readme on how to use the Docker image and for information regarding contributing and issues.
This is the Git repo of the Docker image for [Fedora 5 docker](https://hub.docker.com/r/yinlinchen/fcrepo4-docker/). Please see the [Hub page](https://hub.docker.com/r/yinlinchen/fcrepo4-docker/) for the full readme on how to use the Docker image and for information regarding contributing and issues.

## Requirements

* [Docker](https://www.docker.com/)

## Usage
Run Fedora with a file-based objects database (Default Fcrepo 4.7.5):
Run Fedora with a file-based objects database (Default Fcrepo 5.0.0):
```
# Start server
docker-compose up -d
Expand Down Expand Up @@ -36,63 +36,23 @@ docker-compose -f fcrepo-postgres.yml down

Fedora [Dockerfile](docker/services/fcrepo/Dockerfile)

Run Fedora with Solr, Karaf, Fuseki, and Fcrepo-camel-toolbox
1. `docker pull yinlinchen/fcrepo4-docker`
2. `docker run -it -p 8080:8080 -d yinlinchen/fcrepo4-docker:4.7.5`
3. Use `docker ps` to check the "CONTAINER ID" and "STATUS". The container should be ready to use after 5 minutes.

You can shell into the machine with `docker exec -i -t "CONTAINER ID" /bin/bash`

## In this Docker image, see detail in [Dockerfile](Dockerfile)

* Ubuntu 14.04 64-bit machine with:
* [Tomcat 8.0.53](https://tomcat.apache.org) at [http://localhost:8080](http://localhost:8080)
* Manager username = "fedora4", password = "fedora4"
* [Fedora 4.7.5](https://wiki.duraspace.org/display/FF/Downloads) at [http://localhost:8080/fcrepo](http://localhost:8080/fcrepo)
* No authentication configured
* [Solr 4.10.3](https://lucene.apache.org/solr/) at [http://localhost:8080/solr](http://localhost:8080/solr), for indexing & searching your content.
* Installed in "/usr/local/tomcat7/solr"
* [Apache Karaf 4.0.5](http://karaf.apache.org/)
Installed in /opt/karaf
Installed as a service apache-karaf
* [Fuseki 2.3.1](https://jena.apache.org/documentation/serving_data/index.html) at [http://localhost:8080/fuseki](http://localhost:8080/fuseki), for querying and updating.
* Installed in "/etc/fuseki"
* Dataset Path name "/test"
* Persistent storage "/etc/fuseki/databases/test_data"
* [Fcrepo-camel-toolbox 4.7.2](https://github.com/fcrepo4-labs/fcrepo-camel-toolbox)
* Installed in Tomcat container
* [Fedora 5.0.0](https://wiki.duraspace.org/display/FF/Downloads) at [http://localhost:8080/fcrepo](http://localhost:8080/fcrepo)

ps. MacOS: docker is configured to use the default machine with IP e.g. 192.168.99.100 or 127.0.0.1, the Fedora 4 URL is either [http://192.168.99.100:8080/fcrepo](http://192.168.99.100:8080/fcrepo) or [http://127.0.0.1/fcrepo](http://127.0.0.1/fcrepo). You can use "docker-machine ip" to see your docker machine IP.


## Fedora Configuration
The default Docker build is Fedora 4 without WebAC and Audit capability.
```
docker build -t="tag-default" .
```

To enable Fedora 4 with WebAC enabled.
```
docker build --build-arg FedoraConfig=webac- --build-arg ModeshapeConfig=servlet-auth -t="tag-webac" .
```
Three Fedora user accounts are available:
* user account testuser, with password password1
* user account adminuser, with password password2
* admin account fedoraAdmin with the password secret3

To enable Fedora 4 with Audit capability.
```
docker build --build-arg FedoraConfig=audit- -t="tag-audit" .
```

To enable Fedora 4 with WebAC and Audit capability.
```
docker build --build-arg FedoraConfig=webac-audit- --build-arg ModeshapeConfig=servlet-auth -t="tag-webac-audit" .
```
## Fedora 4 docker
* All the previous Fedora 4 releases are located at [Fedora4](Fedora4)

## Maintainers

Current maintainers:

* [Yinlin Chen](https://github.com/yinlinchen)
* [Paul Mather](https://github.com/pmather)

4 changes: 2 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ services:
build:
context: ./docker/services/fcrepo
args:
FEDORA_VERSION: 4.7.5
FEDORA_TAG: 4.7.5
FEDORA_VERSION: 5.0.0
FEDORA_TAG: 5.0.0
image: fcrepo
networks:
appnetwork:
Expand Down
2 changes: 1 addition & 1 deletion docker/services/fcrepo/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ RUN echo 'JAVA_OPTS="$JAVA_OPTS -Dfcrepo.modeshape.configuration=classpath:/conf
&& chmod +x $CATALINA_HOME/bin/setenv.sh

RUN cd /tmp \
&& curl -fSL https://github.com/fcrepo4-exts/fcrepo-webapp-plus/releases/download/fcrepo-webapp-plus-$FEDORA_TAG/fcrepo-webapp-plus-$FedoraConfig$FEDORA_VERSION.war -o fcrepo.war \
&& curl -fSL https://github.com/fcrepo4/fcrepo4/releases/download/fcrepo-$FEDORA_TAG/fcrepo-webapp-$FEDORA_TAG.war -o fcrepo.war \
&& cp fcrepo.war /usr/local/tomcat/webapps/fcrepo.war

WORKDIR /usr/local/tomcat
Expand Down
4 changes: 2 additions & 2 deletions fcrepo-mysql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ services:
build:
context: ./docker/services/fcrepo
args:
FEDORA_VERSION: 4.7.5
FEDORA_TAG: 4.7.5
FEDORA_VERSION: 5.0.0
FEDORA_TAG: 5.0.0
ModeshapeConfig: jdbc-mysql
JDBCConfig: -Dfcrepo.mysql.username=fcrepoadmin -Dfcrepo.mysql.password=fcrepoadminpw -Dfcrepo.mysql.host=mysql.docker.local -Dfcrepo.mysql.port=3306
image: fcrepo
Expand Down
4 changes: 2 additions & 2 deletions fcrepo-postgres.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ services:
build:
context: ./docker/services/fcrepo
args:
FEDORA_VERSION: 4.7.5
FEDORA_TAG: 4.7.5
FEDORA_VERSION: 5.0.0
FEDORA_TAG: 5.0.0
ModeshapeConfig: jdbc-postgresql
JDBCConfig: -Dfcrepo.postgresql.username=fcrepoadmin -Dfcrepo.postgresql.password=fcrepoadminpw -Dfcrepo.postgresql.host=postgres.docker.local -Dfcrepo.postgresql.port=5432
image: fcrepo
Expand Down

0 comments on commit eb93b95

Please sign in to comment.