Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/gaol/pnc-docker

An Automated build of docker image which contains WildFly, Aprox and Postgresql server prepared
https://github.com/gaol/pnc-docker

Last synced: 19 days ago
JSON representation

An Automated build of docker image which contains WildFly, Aprox and Postgresql server prepared

Awesome Lists containing this project

README

        

# pnc-docker
An Automated build of docker image which contains WildFly, Aprox and Postgresql server prepared.
It can be easily used to deploy the [pnc](https://github.com/project-ncl/pnc) ear.

## what it provides

* WildFly 8.2.0.Final started at port: `8080`, management port at: `9990`
* This has postgresql driver and pnc datasource configured already:
* jta datasource: `java:jboss/datasources/NewcastleDS`
* db conn url: `jdbc:postgresql://localhost:5432/newcastle`
* db username: `newcastle`
* db password: `newcastle`
* Aprox-launcher-savant-0.19.1 started at port: `8090`
* Postgresql server started at port: `5432`
* This has the `newcastle` database created, but no DDL imported yet.

## what it does not provides

* No pnc ear deployments
* The container needs a volume `/mnt/deployments` mounted on start up, the `ear-package.ear` can be put in
the docker host machine, then use `-v /opt/pnc/deployments:/mnt/deployments` arguement to run the container.
* No pnc database DDL script imported
* the pnc ear will use `create-drop` for hibernate ddl import
* No jenkins docker container prepared
* pnc set up needs another docker container to run jenkins in it.
* The docker jenkins container will be another one.

## pnc-config.json

The pnc-config.json:

```
{
"@class":"ModuleConfigJson","name":"pnc-config",
"configs":[
{
"@module-config":"jenkins-build-driver",
"username":"pnc-system-user",
"password":"changeme"
},
{
"@module-config":"maven-repo-driver",
"baseUrl":"http://localhost:8090/api"
},
{
"@module-config":"docker-environment-driver",
"ip":"172.17.42.1",
"inContainerUser":"root",
"inContainerUserPassword":"changeme",
"dockerImageId":"mareknovotny/pnc-jenkins:v0.3",
"firewallAllowedDestinations":"172.17.42.1"
}
]
}
```

## job-template.xml

```


Free-style job config for testing
false


2


${scm_url}




${scm_branch}


false



true
false
false
false

false


${hudson.tasks.Shell.command}



```

## Command to start the container

Assume your pnc ear is located at: `/opt/pnc/deployments/` in the docker host,
and the config files above are located at: `/opt/pnc/config/` in the docker host,
then using following arguments to pass into the docker contaniner:

`docker run -d --name=pnc-docker -p 8080:8080 -v /opt/pnc/deployments/:/mnt/deployments/ -v /opt/pnc/config:/mnt/config aoingl/pnc-docker`

> Remember to copy the configuration files above into `/opt/pnc/config/pnc-config.json` and `/opt/pnc/config/job-template.xml`

Then you can visit the pnc project at: `http://127.0.0.1:8080/pnc-web/`

> Make sure your docker daemon runs at: `-H tcp://0.0.0.0:2375`, the port is hardcoded in pnc currently.