@ -0,0 +1,32 @@ |
|||||
|
# project-tools |
||||
|
|
||||
|
Set of tools inside Docker containers, using docker-compose. |
||||
|
|
||||
|
### Current tools |
||||
|
- [x] gitlab / gogs (https://gogs.io/) / gitea (https://gitea.io) |
||||
|
- [x] kanboard (https://kanboard.org/) |
||||
|
- [x] mumble (murmur) (https://www.mumble.com/) |
||||
|
- [ ] etherpad (http://etherpad.org/) / cryptopad |
||||
|
- [ ] nextcloud |
||||
|
- [ ] dudle (https://github.com/kellerben/dudle/) |
||||
|
- [ ] matrix/rocketchat |
||||
|
- [ ] draw.io |
||||
|
|
||||
|
|
||||
|
Run with |
||||
|
``` |
||||
|
POSTGRES_USER=user1 POSTGRES_PASSWORD=user1 docker-compose up |
||||
|
``` |
||||
|
|
||||
|
Ports: |
||||
|
- launcher |
||||
|
- 8080 |
||||
|
- gogs |
||||
|
- 4000 |
||||
|
- kanboard |
||||
|
- 4001 |
||||
|
- etherpad |
||||
|
- 4002 |
||||
|
|
||||
|
|
||||
|
In the directory /launcher there is a webapp with links to all the services. |
@ -0,0 +1,69 @@ |
|||||
|
version: '3' |
||||
|
services: |
||||
|
kanboard: |
||||
|
image: kanboard/kanboard:latest |
||||
|
restart: always |
||||
|
ports: |
||||
|
- "4001:80" |
||||
|
- "443:443" |
||||
|
volumes: |
||||
|
- kanboard_data:/var/www/app/data |
||||
|
- kanboard_plugins:/var/www/app/plugins |
||||
|
- kanboard_ssl:/etc/nginx/ssl |
||||
|
postgres: |
||||
|
image: postgres:9.5 |
||||
|
restart: always |
||||
|
environment: |
||||
|
- "POSTGRES_USER=${POSTGRES_USER}" |
||||
|
- "POSTGRES_PASSWORD=${POSTGRES_PASSWORD}" |
||||
|
- "POSTGRES_DB=gogs" |
||||
|
- "POSTGRES_DB=pad" |
||||
|
volumes: |
||||
|
- "db-data:/var/lib/postgresql/data" |
||||
|
networks: |
||||
|
- gogs |
||||
|
gogs: |
||||
|
image: gogs/gogs:latest |
||||
|
restart: always |
||||
|
ports: |
||||
|
- "10022:22" |
||||
|
- "4000:3000" |
||||
|
links: |
||||
|
- postgres |
||||
|
environment: |
||||
|
- "RUN_CROND=true" |
||||
|
networks: |
||||
|
- gogs |
||||
|
volumes: |
||||
|
- "gogs-data:/data" |
||||
|
depends_on: |
||||
|
- postgres |
||||
|
|
||||
|
murmur: |
||||
|
image: vimagick/murmur |
||||
|
ports: |
||||
|
- "64738:64738/tcp" |
||||
|
- "64738:64738/udp" |
||||
|
restart: always |
||||
|
|
||||
|
launcher: |
||||
|
build: ./launcher |
||||
|
ports: |
||||
|
- "8080:8080" |
||||
|
|
||||
|
|
||||
|
networks: |
||||
|
gogs: |
||||
|
driver: bridge |
||||
|
|
||||
|
volumes: |
||||
|
kanboard_data: |
||||
|
driver: local |
||||
|
kanboard_plugins: |
||||
|
driver: local |
||||
|
kanboard_ssl: |
||||
|
driver: local |
||||
|
db-data: |
||||
|
driver: local |
||||
|
gogs-data: |
||||
|
driver: local |
@ -0,0 +1,2 @@ |
|||||
|
node_modules |
||||
|
package-lock.json |
@ -0,0 +1,12 @@ |
|||||
|
FROM node:argon |
||||
|
|
||||
|
RUN mkdir /launcher |
||||
|
WORKDIR /launcher |
||||
|
|
||||
|
ADD . /launcher |
||||
|
|
||||
|
RUN npm install -g http-server |
||||
|
|
||||
|
CMD http-server |
||||
|
|
||||
|
EXPOSE 8080 |
@ -0,0 +1,62 @@ |
|||||
|
<!doctype html> |
||||
|
<html lang="en"> |
||||
|
|
||||
|
<head> |
||||
|
<!-- Required meta tags --> |
||||
|
<meta charset="utf-8"> |
||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> |
||||
|
|
||||
|
<!-- Bootstrap CSS --> |
||||
|
<link rel="stylesheet" href="node_modules/bootstrap/dist/css/bootstrap.min.css" integrity="sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB" crossorigin="anonymous"> |
||||
|
|
||||
|
<title>Launcher</title> |
||||
|
</head> |
||||
|
|
||||
|
<body> |
||||
|
<br><br><br> |
||||
|
<div class="container"> |
||||
|
<h3>Web Apps</h3> |
||||
|
<hr> |
||||
|
<div class="row"> |
||||
|
<div class="col-sm-2"> |
||||
|
<a href="http://127.0.0.1:4002" target="_blank" class="btn btn-outline-info"> |
||||
|
<img src="img/etherpad.png" style="max-width:100px;" alt="etherpad" title="etherpad"> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-sm-2"> |
||||
|
<a href="http://127.0.0.1:4001" target="_blank" class="btn btn-outline-info"> |
||||
|
<img src="img/kanboard.png" style="max-width:100px;" alt="kanboard" title="kanboard"> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-sm-2"> |
||||
|
<a href="http://127.0.0.1:4000" target="_blank" class="btn btn-outline-info"> |
||||
|
<img src="img/gogs.png" style="max-width:100px;" alt="gogs" title="gogs"> |
||||
|
</a> |
||||
|
</div> |
||||
|
<div class="col-sm-2"> |
||||
|
<a href="http://127.0.0.1:4000" target="_blank" class="btn btn-outline-info"> |
||||
|
<img src="img/nextcloud.png" style="max-width:100px;" alt="nextcloud" title="nextcloud"> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<br><br> |
||||
|
<h3>Services</h3> |
||||
|
<hr> |
||||
|
<div class="row"> |
||||
|
<div class="col-sm-2"> |
||||
|
<a href="http://127.0.0.1:64738" target="_blank" class="btn btn-outline-secondary"> |
||||
|
<img src="img/mumble.png" style="max-width:100px;" alt="mumble" title="mumble"> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<!-- Optional JavaScript --> |
||||
|
<!-- jQuery first, then Popper.js, then Bootstrap JS --> |
||||
|
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> |
||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script> |
||||
|
<script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script> |
||||
|
</body> |
||||
|
|
||||
|
</html> |
@ -0,0 +1,14 @@ |
|||||
|
{ |
||||
|
"name": "launcher", |
||||
|
"version": "1.0.0", |
||||
|
"description": "", |
||||
|
"main": "index.js", |
||||
|
"scripts": { |
||||
|
"test": "echo \"Error: no test specified\" && exit 1" |
||||
|
}, |
||||
|
"author": "", |
||||
|
"license": "ISC", |
||||
|
"dependencies": { |
||||
|
"bootstrap": "^4.1.1" |
||||
|
} |
||||
|
} |