This document describes how to install Cosmos using the cosmos-control and scripts directory.
The most commands can also take arguments. The current argument options when running are listed.
- dev: Will download, build and run fluentd, opendistro elastic, opendistro kibana, prometheus, grafana. The memory footprint of these containers can cause some computers to not run Cosmos.
To build you can use an environment variable SSL_CERT_FILE
or it will default to use a public curl ca file. When you run setup it copys the SSL_CERT_FILE
and will place a copy in the root of the cosmos repo as cacert.pem
, along with the cosmos directory and the frontend directory. These are needed to build the docker containers.
If you're building and want to use a private Rubygems, NPM or APK server (e.g. Nexus) you can update the following environment variables: RUBYGEMS_URL, NPM_URL, APK_URL, and more in the .env file. Example values:
- ALPINE_VERSION=3.15
- ALPINE_BUILD=0
- RUBYGEMS_URL=https://rubygems.org
- NPM_URL=https://registry.npmjs.org
- APK_URL=http://dl-cdn.alpinelinux.org
>cosmos-control.bat setup
$ cosmos-control.sh setup
This will run the setup to make sure it has been run. It will build and run the minimal requirements for cosmos. This will create a docker network and volumes if they do not already exist. Then run the containers.
>cosmos-control.bat start
$ cosmos-control.sh start
This will safely stop all cosmos containers and disconnect from all targets. This will NOT remove the docker network or volumes and thus all stored commands and telemetry are saved.
>cosmos-control.bat stop
$ cosmos-control.sh stop
Note this is destructive and if successful ALL stored commands and telemetry are deleted. This will remove all docker volumes which will delete ALL stored commands and telemetry! This will NOT stop running docker containers.
>cosmos-control.bat cleanup
$ cosmos-control.sh cleanup
This will build all new containers. If cosmos is being used you will have to stop and start the containers to get the new build.
>cosmos-control.bat build
$ cosmos-control.sh build
Deploy built docker containers into a local docker repository.
>cosmos-control.bat deploy
$ cosmos-control.sh deploy