Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4040 docker openshift #4168

Merged
merged 26 commits into from
Oct 17, 2017
Merged
Changes from 1 commit
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
d287772
stub out Docker and OpenShift files #4040
pdurbin Sep 14, 2017
77b3f67
switch from Project to Template, add dev docs #4040
pdurbin Sep 15, 2017
4702e0a
use config from @danmcp #4040
pdurbin Sep 15, 2017
f41d753
add centos/postgresql-94-centos7 #4040
pdurbin Sep 18, 2017
c20dd39
add ndslabs/dataverse-solr image #4040
pdurbin Sep 18, 2017
3ab921c
add more handy `oc` commands to docs #4040
pdurbin Sep 19, 2017
2198367
expose postgres env vars needed by init-glassfish #4040
pdurbin Sep 19, 2017
6ec54c2
must have selector for expose route to work #4040
pdurbin Sep 19, 2017
e90f771
set dataverseAdmin password to "admin" #4040
pdurbin Sep 19, 2017
975d38e
explain how to run containers as root #4040
pdurbin Sep 19, 2017
0a44410
build and switch to iqss/dataverse-solr on Docker Hub #4040
pdurbin Sep 20, 2017
7c81b4e
switch from ndslabs to iqss Dataverse/Glassfish image #4040
pdurbin Sep 21, 2017
6e4ef45
use the right Docker tag for Dataverse/Glassfish #4040
pdurbin Sep 22, 2017
8040a5d
document dataverse.timerServer JVM option
pdurbin Sep 25, 2017
815e48a
document how to create Docker images #4040
pdurbin Sep 25, 2017
43d3844
add NDS Labs Workbench for testing Dataverse #4040 #4152
pdurbin Sep 25, 2017
ce949c9
Docker tag with no issue number (kick-the-tires) #4040
pdurbin Sep 25, 2017
b84526c
get Dataverse/Glassfish container running as non-root #4040
pdurbin Sep 27, 2017
ca6b6be
Dataverse is too fat to run in 1 GB of memory #4040
pdurbin Sep 27, 2017
ef81e53
Merge branch 'develop' into 4040-docker-openshift #4040
pdurbin Sep 27, 2017
e920e9f
cleanup #4040
pdurbin Sep 27, 2017
74767a6
remove cruft from botch conflict resolution #4040
pdurbin Sep 27, 2017
4dd759b
let build script push arbitrary tags to Docker Hub #4040
pdurbin Sep 29, 2017
8a48b4f
Documentation edits minishift #4040
matthew-a-dunlap Oct 11, 2017
25cfb30
doc fix: all containers run as non-root now #4040
pdurbin Oct 12, 2017
1e7fb53
File path clarity#4040
matthew-a-dunlap Oct 17, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 13 additions & 7 deletions doc/sphinx-guides/source/developers/dev-environment.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ As a `Java Enterprise Edition <http://en.wikipedia.org/wiki/Java_Platform,_Enter

Glassfish 4.1 is required (not any earlier or later versions until https://github.com/IQSS/dataverse/issues/2628 is resolved), which can be downloaded from http://download.oracle.com/glassfish/4.1/release/glassfish-4.1.zip . If you have downloaded Glassfish as part of a Netbeans bundle, you can manually add the proper version by clicking "Tools", "Servers", "Add Server".

By default, Glassfish reports analytics information. The administration guide suggests this can be disabled with ``asadmin create-jvm-options -Dcom.sun.enterprise.tools.admingui.NO_NETWORK=true``, should this be found to be undesirable for development purposes.
By default, Glassfish reports analytics information. The administration guide suggests this can be disabled with ``asadmin create-jvm-options -Dcom.sun.enterprise.tools.admingui.NO_NETWORK=true``, should this be found to be undesirable for development purposes.

PostgreSQL
~~~~~~~~~~
Expand Down Expand Up @@ -94,7 +94,7 @@ From the terminal, ``ssh-keygen`` will create new ssh keys for you:
Clone Project from GitHub
~~~~~~~~~~~~~~~~~~~~~~~~~

Before cloning the repo, you are invited to read about our branching strategy in the :doc:`version-control` section but we'll explain the basics here.
Before cloning the repo, you are invited to read about our branching strategy in the :doc:`version-control` section but we'll explain the basics here.

Determine Which Repo To Push To
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down Expand Up @@ -355,7 +355,7 @@ Start Minishift

``minishift start --vm-driver=virtualbox``

Make the oc Command Executable
Make the OpenShift Client Binary (oc) Executable
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

``eval $(minishift oc-env)``
Expand All @@ -376,7 +376,7 @@ For now we're allowing containers to run as root. Until the images are fixed to

``oc adm policy add-scc-to-user anyuid -z default --as system:admin``

FIXME: Eventually, we should create containers that don't require root. When we do. Make sure Dataverse still runs on Minishift after you've stopped allowing containers to run as root by issuing the following command:
FIXME: Eventually, we should create containers that don't require root. When we do, run the following command to ensure Dataverse still runs on Minishift after you've stopped allowing containers to run as root:

``oc adm policy remove-scc-from-user anyuid -z default --as system:admin``

Expand All @@ -390,6 +390,8 @@ Create a Minishift Project
Create a Dataverse App within the Minishift Project
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Running this command will download images from Docker Hub and use them to create a Dataverse application.

``oc new-app conf/openshift/openshift.json``

Check Status of Dataverse Deployment to Minishift
Expand Down Expand Up @@ -422,9 +424,13 @@ From the ``rsh`` prompt you could run something like the following to build conf
Make the Dataverse App Available Via HTTP
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

First, check the IP address of your minishift cluster. If this differs from the IP address used below, replace it.

``minishift ip``

The following curl command is expected to fail until you "expose" the HTTP service.

``curl http://dataverse-glassfish-service-project1.192.168.99.102.nip.io/api/info/version``
``curl http://dataverse-glassfish-service-project1.192.168.99.100.nip.io/api/info/version``
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I think @pameyer warned me that these IP addresses will change.


Expose the Dataverse web service:

Expand All @@ -435,7 +441,7 @@ Make Sure the Dataverse API is Working

This should show a version number:

``curl http://dataverse-glassfish-service-project1.192.168.99.102.nip.io/api/info/version``
``curl http://dataverse-glassfish-service-project1.192.168.99.100.nip.io/api/info/version``
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


Log into Minishift and Visit Dataverse in your Browser
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand All @@ -444,7 +450,7 @@ Log into Minishift and Visit Dataverse in your Browser
- username: developer
- password: developer

Visit https://192.168.99.100:8443/console/project/project1/browse/routes and click http://dataverse-glassfish-service-project1.192.168.99.100.nip.io/ or whatever is shows. This assumes you named your project ``project1``.
Visit https://192.168.99.100:8443/console/project/project1/browse/routes and click http://dataverse-glassfish-service-project1.192.168.99.100.nip.io/ or whatever is shows under "Routes External Traffic". This assumes you named your project ``project1``.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This says 100 also. I think we should back out of the changes to 102 above and just say that the IP will vary.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, duh. It looks like @matthew-a-dunlap was making this IP consistently "100", which is great. I added notes that it can vary in 25cfb30


You should be able to log in with username "dataverseAdmin" and password "admin".

Expand Down