https://github.com/mikesir87/bacabs
UI dashboard to provide all running applications within a Docker-based environment
https://github.com/mikesir87/bacabs
Last synced: about 2 months ago
JSON representation
UI dashboard to provide all running applications within a Docker-based environment
- Host: GitHub
- URL: https://github.com/mikesir87/bacabs
- Owner: mikesir87
- License: other
- Created: 2017-04-25T18:16:10.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2018-05-24T14:51:40.000Z (about 7 years ago)
- Last Synced: 2025-04-01T15:54:14.550Z (about 2 months ago)
- Language: CSS
- Size: 474 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Requirements
- A running Docker Swarm
```docker swarm init```
- An attachable overlay network named `bacabs-frontend`. This network will be the one that Traefik will be sending traffic on. Only applications on this network will be able to receive traffic.
```docker network create -d overlay --attachable bacabs-frontend```
## RunningThe app is available as a Docker Swarm stack, but there's a little bit of configuration that is needed to run.
### Runtime Configuration
- `$BACABS_HOST` - the hostname for the dashboard. The other components will be subdomains upon this root
- `$TRAEFIK_ARGS` - other arguments to provide when starting up Traefik. This allows you to setup ACME (LetsEncrypt), logging, etc. To see all available options, you can run `docker run --rm traefik:1.2-alpine --help`### Launching
After setting the runtime configuration and meeting the requirements above, simply launch the stack!
```docker stack deploy -c docker-stack.yml bacabs```
## Development
There is a `docker-compose.yml` file that can be used for local development. The main difference between this file and `docker-stack.yml` is that this one builds the images locally and mounts the local source for easier development.
The requirements listed above still apply. Once met, run:
```docker-compose up -d```
## BuildingThere is a simple build script (`build.sh`) that simply performs all of the Docker builds for the application.
- `-t` - specify the tag to be applied to the built images. _Default: latest_
- `-p` - when set, images are pushed after they are built## Roadmap
- **Native Swarm support** - Depends on [PR #32421](https://github.com/moby/moby/pull/32421) to receive events of Swarm service events. Until then, the `docker-event-watcher` agent has to run on every node to ensure container starts/stops are observed
## Known Issues/Shortcomings
- Due to the lack of native Swarm support (see above), a deployment could be marked as down from a simple scaling down, as that causes a container "die" event. If you're running only a single replica, this won't be an issue for you.