Fix some minor whitespace issues and update formatting

This commit is contained in:
Tianon Gravi 2016-01-15 15:48:52 -08:00
parent 357d461202
commit 6c0a54c98c
7 changed files with 129 additions and 69 deletions

View File

@ -10,7 +10,9 @@ Bonita BPM is an open-source business process management and workflow suite crea
## Quick start
docker run --name bonita -d -p 8080:8080 bonita
```console
$ docker run --name bonita -d -p 8080:8080 bonita
```
This will start a container running the [Tomcat Bundle](http://documentation.bonitasoft.com/tomcat-bundle-2) with Bonita BPM Engine + Bonita BPM Portal. With no environment variables specified, it's as like if you have launched the bundle on your host using startup.{sh|bat} (with security hardening on REST and HTTP APIs, cf Security part). Bonita BPM uses a H2 database here.
@ -31,11 +33,15 @@ PostgreSQL is the recommanded database.
Mount that directory location as /docker-entrypoint-initdb.d inside the PostgreSQL container:
docker run --name mydbpostgres -v "$PWD"/custom_postgres/:/docker-entrypoint-initdb.d -e POSTGRES_PASSWORD=mysecretpassword -d postgres:9.3
```console
$ docker run --name mydbpostgres -v "$PWD"/custom_postgres/:/docker-entrypoint-initdb.d -e POSTGRES_PASSWORD=mysecretpassword -d postgres:9.3
```
See the [official PostgreSQL documentation](https://registry.hub.docker.com/_/postgres/) for more details.
docker run --name bonita_postgres --link mydbpostgres:postgres -d -p 8080:8080 bonita
```console
$ docker run --name bonita_postgres --link mydbpostgres:postgres -d -p 8080:8080 bonita
```
### MySQL
@ -49,17 +55,23 @@ There are known issues with the management of XA transactions by MySQL engine an
Mount that directory location as /etc/mysql/conf.d inside the MySQL container:
docker run --name mydbmysql -v "$PWD"/custom_mysql/:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql:5.5
```console
$ docker run --name mydbmysql -v "$PWD"/custom_mysql/:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql:5.5
```
See the [official MySQL documentation](https://registry.hub.docker.com/_/mysql/) for more details.
Start your application container to link it to the MySQL container:
docker run --name bonita_mysql --link mydbmysql:mysql -d -p 8080:8080 bonita
```console
$ docker run --name bonita_mysql --link mydbmysql:mysql -d -p 8080:8080 bonita
```
## Modify default credentials
docker run --name=bonita -e "TENANT_LOGIN=tech_user" -e "TENANT_PASSWORD=secret" -e "PLATFORM_LOGIN=pfadmin" -e "PLATFORM_PASSWORD=pfsecret" -d -p 8080:8080 bonita
```console
$ docker run --name=bonita -e "TENANT_LOGIN=tech_user" -e "TENANT_PASSWORD=secret" -e "PLATFORM_LOGIN=pfadmin" -e "PLATFORM_PASSWORD=pfsecret" -d -p 8080:8080 bonita
```
Now you can access the Bonita BPM Portal on localhost:8080/bonita and login using: tech_user / secret
@ -83,27 +95,33 @@ The `-v /my/own/datadir:/opt/bonita` part of the command mounts the `/my/own/dat
Note that users on host systems with SELinux enabled may see issues with this. The current workaround is to assign the relevant SELinux policy type to the new data directory so that the container will be allowed to access it:
chcon -Rt svirt_sandbox_file_t /my/own/datadir
```console
$ chcon -Rt svirt_sandbox_file_t /my/own/datadir
```
## Migrate from an earlier version of Bonita BPM
1. Stop the container to perform a backup
docker stop bonita_7.0.0_postgres
```console
$ docker stop bonita_7.0.0_postgres
```
2. Check where your data are stored
docker inspect bonita_7.0.0_postgres
[...]
"Mounts": [
{
"Source": "/home/user/Documents/Docker/Volumes/bonita_7.0.0_postgres",
"Destination": "/opt/bonita",
"Mode": "",
"RW": true
}
],
[...]
```console
$ docker inspect bonita_7.0.0_postgres
[...]
"Mounts": [
{
"Source": "/home/user/Documents/Docker/Volumes/bonita_7.0.0_postgres",
"Destination": "/opt/bonita",
"Mode": "",
"RW": true
}
],
[...]
```
3. Copy data from the filesystem
@ -111,8 +129,10 @@ Note that users on host systems with SELinux enabled may see issues with this. T
4. Retrieve the DB container IP
docker inspect --format '{{ .NetworkSettings.IPAddress }}' mydbpostgres
172.17.0.26
```console
$ docker inspect --format '{{ .NetworkSettings.IPAddress }}' mydbpostgres
172.17.0.26
```
5. Dump the database
@ -169,7 +189,9 @@ Note that users on host systems with SELinux enabled may see issues with this. T
11. Launch the new container pointing towards the copy of DB and filesystem
docker run --name=bonita_7.0.3_postgres --link mydbpostgres:postgres -e "DB_NAME=newbonitadb" -e "DB_USER=newbonitauser" -e "DB_PASS=newbonitapass" -v "$PWD"/bonita_7.0.3_postgres:/opt/bonita/ -d -p 8081:8080 bonita:7.0.3
```console
$ docker run --name=bonita_7.0.3_postgres --link mydbpostgres:postgres -e "DB_NAME=newbonitadb" -e "DB_USER=newbonitauser" -e "DB_PASS=newbonitapass" -v "$PWD"/bonita_7.0.3_postgres:/opt/bonita/ -d -p 8081:8080 bonita:7.0.3
```
For more details regarding Bonita migration, see the [documentation](http://documentation.bonitasoft.com/migrate-earlier-version-bonita-bpm-0).
@ -187,7 +209,9 @@ This Docker image activates both static and dynamic authorization checks by defa
For specific needs you can override this behavior by setting HTTP_API to true and REST_API_DYN_AUTH_CHECKS to false:
docker run -e HTTP_API=true -e REST_API_DYN_AUTH_CHECKS=false --name bonita -d -p 8080:8080 bonita
```console
$ docker run -e HTTP_API=true -e REST_API_DYN_AUTH_CHECKS=false --name bonita -d -p 8080:8080 bonita
```
## Environment variables
@ -276,5 +300,7 @@ For example, you can increase the log level :
Note: There are several ways to check the `bonita` logs. One of them is
docker exec -ti bonita_custom /bin/bash
tail -f /opt/bonita/BonitaBPMCommunity-7.0.0-Tomcat-7.0.55/logs/bonita.`date +%Y-%m-%d`.log
```console
$ docker exec -ti bonita_custom /bin/bash
tail -f /opt/bonita/BonitaBPMCommunity-7.0.0-Tomcat-7.0.55/logs/bonita.`date +%Y-%m-%d`.log
```

View File

@ -3,4 +3,3 @@ Bonita BPM image includes two parts :
- Bonita BPM Engine under [LGPL v2.1](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html)
- Bonita BPM Portal under [GPL v2.0](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)

View File

@ -84,7 +84,9 @@ docker run --name myjenkins -p 8080:8080 -p 50000:50000 --env JAVA_OPTS="-Djava.
Argument you pass to docker running the jenkins image are passed to jenkins launcher, so you can run for sample :
docker run jenkins --version
```console
$ docker run jenkins --version
```
This will dump Jenkins version, just like when you run jenkins as an executable war.
@ -108,7 +110,9 @@ ENV JENKINS_SLAVE_AGENT_PORT 50001
or as a parameter to docker,
docker run --name myjenkins -p 8080:8080 -p 50001:50001 --env JENKINS_SLAVE_AGENT_PORT=50001 jenkins
```console
$ docker run --name myjenkins -p 8080:8080 -p 50001:50001 --env JENKINS_SLAVE_AGENT_PORT=50001 jenkins
```
# Installing more tools

View File

@ -10,11 +10,13 @@ Neo4j is a highly scalable, robust, native graph database. It is used in mission
The image exposes two ports (`7474` and `7473`) for HTTP and HTTPS access to the Neo4j API and a volume (`/data`) to allow the database to be persisted outside its container.
docker run \
--detach \
--publish=7474:7474 \
--volume=$HOME/neo4j/data:/data \
neo4j
```console
$ docker run \
--detach \
--publish=7474:7474 \
--volume=$HOME/neo4j/data:/data \
neo4j
```
Point your browser at `http://localhost:7474` on Linux or `http://$(docker-machine ip default):7474` on OSX.
@ -40,17 +42,21 @@ Docker controls the number of open file descriptors in a container; the limit de
To check the limit on your system, run this command:
docker run neo4j \
bash -c 'echo Soft limit: $(ulimit -Sn); echo Hard limit: $(ulimit -Hn)'
```console
$ docker run neo4j \
bash -c 'echo Soft limit: $(ulimit -Sn); echo Hard limit: $(ulimit -Hn)'
```
To override the default configuration for a single container, use the `--ulimit` option like this:
docker run \
--detach \
--publish=7474:7474 \
--volume=$HOME/neo4j/data:/data \
--ulimit=nofile=40000:40000
neo4j
```console
$ docker run \
--detach \
--publish=7474:7474 \
--volume=$HOME/neo4j/data:/data \
--ulimit=nofile=40000:40000
neo4j
```
## Neo4j configuration
@ -62,12 +68,14 @@ There are three ways to modify the configuration depending on how much you need
Pass environment variables to the container when you run it.
docker run \
--detach \
--publish=7474:7474 \
--volume=$HOME/neo4j/data:/data \
--env=NEO4J_CACHE_MEMORY=4G \
neo4j
```console
$ docker run \
--detach \
--publish=7474:7474 \
--volume=$HOME/neo4j/data:/data \
--env=NEO4J_CACHE_MEMORY=4G \
neo4j
```
The following environment variables are available:
@ -90,26 +98,32 @@ The following settings control features that are only available in the Enterpris
To make arbitrary modifications to the Neo4j configuration, provide the container with a `/conf` volume.
docker run \
--detach \
--publish=7474:7474 \
--volume=$HOME/neo4j/data:/data \
--volume=$HOME/neo4j/conf:/conf \
neo4j
```console
$ docker run \
--detach \
--publish=7474:7474 \
--volume=$HOME/neo4j/data:/data \
--volume=$HOME/neo4j/conf:/conf \
neo4j
```
Any configuration files in the `/conf` volume will override files provided by the image. This includes values that may have been set in response to environment variables passed to the container by Docker. So if you want to change one value in a file you must ensure that the rest of the file is complete and correct.
To dump an initial set of configuration files, run the image with the `dump-config` command.
docker run --rm\
--volume=$HOME/neo4j/conf:/conf \
neo4j dump-config
```console
$ docker run --rm\
--volume=$HOME/neo4j/conf:/conf \
neo4j dump-config
```
### Build a new image
For more complex customization of the image you can create a new image based on this one.
FROM neo4j
```dockerfile
FROM neo4j
```
## Neo4j HA
@ -140,9 +154,11 @@ Within a single Docker host, this can be achieved as follows.
To install a plugin or unmanaged extension, provide a `/plugins` volume containing the jars. For unmanged extensions you also need to provide an environment variable specifying a URI mapping.
docker run --publish 7474:7474 --volume=$HOME/neo4j/plugins:/plugins \
--env=NEO4J_THIRDPARTY_JAXRS_CLASSES=com.example.extension=/example
neo4j
```console
$ docker run --publish 7474:7474 --volume=$HOME/neo4j/plugins:/plugins \
--env=NEO4J_THIRDPARTY_JAXRS_CLASSES=com.example.extension=/example
neo4j
```
See the [manual](http://neo4j.com/docs/stable/server-extending.html) for more details on plugins and unmanaged extensions.
@ -150,4 +166,6 @@ See the [manual](http://neo4j.com/docs/stable/server-extending.html) for more de
The Neo4j shell can be run locally within a container using a command like this:
docker exec --interactive <container> bin/neo4j-shell
```console
$ docker exec --interactive <container> bin/neo4j-shell
```

View File

@ -10,20 +10,28 @@ It is a great solution for communities and companies wanting to privately host t
First, start an instance of mongo:
docker run --name db -d mongo --smallfiles
```console
$ docker run --name db -d mongo --smallfiles
```
Then start Rocket.Chat linked to this mongo instance:
docker run --name rocketchat --link db -d rocket.chat
```console
$ docker run --name rocketchat --link db -d rocket.chat
```
This will start a Rocket.Chat instance listening on the default Meteor port of 3000 on the container.
If you'd like to be able to access the instance directly at standard port on the host machine:
docker run --name rocketchat -p 80:3000 --env ROOT_URL=http://localhost --link db -d rocket.chat
```console
$ docker run --name rocketchat -p 80:3000 --env ROOT_URL=http://localhost --link db -d rocket.chat
```
Then, access it via `http://localhost` in a browser. Replace `localhost` in `ROOT_URL` with your own domain name if you are hosting at your own domain.
If you're using a third party Mongo provider, or working with Kubernetes, you need to override the `MONGO_URL` environment variable:
docker run --name rocketchat -p 80:3000 --env ROOT_URL=http://localhost --env MONGO_URL=mongodb://mymongourl/mydb -d rocket.chat
```console
$ docker run --name rocketchat -p 80:3000 --env ROOT_URL=http://localhost --env MONGO_URL=mongodb://mymongourl/mydb -d rocket.chat
```

View File

@ -28,15 +28,21 @@ Below are some press releases that might be helpful:
Run the default TomEE server (`CMD ["catalina.sh", "run"]`):
docker run -it --rm tomee:<java-version>\-<tomeeversion>\-<flavour>
```console
$ docker run -it --rm tomee:<java-version>\-<tomeeversion>\-<flavour>
```
For example running Apache TomEE 1.7.2 with JRE 8 and Webprofile flavour will be:
docker run -it --rm tomee:8-jre-1.7.2-webprofile
```console
$ docker run -it --rm tomee:8-jre-1.7.2-webprofile
```
You can test it by visiting `http://container-ip:8080` in a browser or, if you need access outside the host, on port 8888:
docker run -it --rm -p 8888:8080 tomee:<java-version>\-<tomeeversion>\-<flavour>
```console
$ docker run -it --rm -p 8888:8080 tomee:<java-version>\-<tomeeversion>\-<flavour>
```
You can then go to `http://localhost:8888` or `http://host-ip:8888` in a browser.

View File

@ -85,4 +85,3 @@ The images are designed to support a number of different usage patterns. The fol
$ docker run -d -p 80:9080 \
--volumes-from app websphere-liberty:webProfile6
```