You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Valentin Lab 8ca68aadc9 fix: [apache] convert config store directory to host path also. 4 years ago
apache fix: [apache] convert config store directory to host path also. 4 years ago
bitwarden chg: [bitwarden,rocketchat] updated ``bitwarden`` to 1.17.0 and ``rocketchat`` to 3.6.3 4 years ago
codimd new: [codimd] add charm 4 years ago
cron new: [cron,gitea] added new backup relation 5 years ago
cyclos new: [cyclos-ui] new charm 4 years ago
cyclos-ui new: [cyclos-ui] new charm 4 years ago
docker-host new: [docker-host] set system timezone 6 years ago
docker-registry new: dev: [apache] store a ``url`` argument instead of a ``protocol`` argument. 6 years ago
docker-registry-auth new: [docker-registry-auth] allow usage of acl rules for public access. 5 years ago
drone chg: [drone] update version of drone 6 years ago
drone-agent new: [drone-agent] implemented labels 6 years ago
gitea new: [cron,gitea] added new backup relation 5 years ago
gitlab new: [gitlab] new charm 6 years ago
gogocartojs new: [gogocartojs] added charm 5 years ago
letsencrypt fix: [letsencrypt] wildcard domains would fail to be created 4 years ago
lo-xcgd new: [py3o-{fusion,server},lo-xcgd] add charm 5 years ago
logrotate fix: [logrotate] avoid circular dependence in final ``docker-compose.yml`` 5 years ago
mariadb new: [mariadb] added ``backup`` relation. 4 years ago
mattermost fix: [mongo,odoo-tecnativa,mattermost,peertube,synapse,rocketchat,redis] avoid using ``find``'s ``-exec`` option as it fails 5 years ago
mongo new: [bitwarden,mongo,nextcloud,rocketchat] added backup relation 5 years ago
mysql new: [mysql,rsync-backup] added host install script 4 years ago
nextcloud new: [bitwarden,mongo,nextcloud,rocketchat] added backup relation 5 years ago
odoo-tecnativa fix: [odoo-tecnativa] remove default install of ``l10n_fr`` 4 years ago
onlyoffice new: [onlyoffice] new charm 5 years ago
peertube new: [apache,peertube,redis] added new backup relation 5 years ago
piwigo new: [piwigo] added ``backup`` relation. 4 years ago
postgres new: [cyclos] new charm 4 years ago
postgres-alpine new: ``charm`` and ``service`` are now clear distinct concept 6 years ago
precise chg: [host] remove =docker-clean= from general install 4 years ago
py3o-fusion new: [py3o-{fusion,server},lo-xcgd] add charm 5 years ago
py3o-server new: [py3o-{fusion,server},lo-xcgd] add charm 5 years ago
radicale new: added ``radicale``. 7 years ago
rancher chg: [mattermost,odoo-tecnativa,rancher-agent,rancher,traefik] restart policy is now automatically set for non run-once services. 6 years ago
rancher-agent chg: [mattermost,odoo-tecnativa,rancher-agent,rancher,traefik] restart policy is now automatically set for non run-once services. 6 years ago
redis new: [apache,peertube,redis] added new backup relation 5 years ago
rocketchat chg: [bitwarden,rocketchat] updated ``bitwarden`` to 1.17.0 and ``rocketchat`` to 3.6.3 4 years ago
rsync-backup new: [mysql,rsync-backup] added host install script 4 years ago
rsync-backup-target new: [mysql,rsync-backup] added host install script 4 years ago
sftp fix: [sftp] ensure that cache won't be used with a different version of the function 5 years ago
softether new: [softether] new charm. 8 years ago
synapse fix: [mongo,odoo-tecnativa,mattermost,peertube,synapse,rocketchat,redis] avoid using ``find``'s ``-exec`` option as it fails 5 years ago
traefik chg: [mattermost,odoo-tecnativa,rancher-agent,rancher,traefik] restart policy is now automatically set for non run-once services. 6 years ago
vsftp new: [vsftp] new charm 6 years ago
whoami new: [traefik,whoami] new charms 6 years ago
README.org chg: updated the README and changed to ``org`` format 4 years ago

README.org

0k-charms

This package provides charms, which are special system recipes, that are meant to be executable and mangled together to allow managing a wide set of services.

Inspired by juju charms, these are mostly bash scripts organized by service and meant to automate all administration tasks, from installation, to connection with other services, or any other task a service would need.

Several tools are able to read the current state of this repository to effectively deploy full production grade services on different type of platform.

The only real fully functional implementation is 0k-compose. It will use these charms to drive, prepare, and build in docker, complete sets of services.

Another old solution called lxc-deploy was used actively before to deploy services on LXC tool set until 2016 using these charms.

Bare hosts can also replay some recipes to install services directly on them via the 0k-charm project using the charm apply command. Note that actually, as most recipes are bash executable, it is still a viable option to copy-paste parts of source-code of these scripts. These last two options are still used very often to bootstrap installs of docker-hosts for instance.

Maturity

Charms in these repository are in a wide set of maturity, from simple note taking of shell commands, not even executable, to full charm allowing to deploy services and manage the full life cycle of the service.

The repository in a whole is thus NOT considered as mature at all, and will require some thorough cleaning and decisions to furthermore structure to reach a state where it'll make sense to go full public.

Usage

TODO Through compose for full deployment of sets of services

Requires 0k-compose package that contains the compose command line tool.

TBD

TODO Through lxc-deploy for full install and deployment of services

Requires lxc-scripts package that holds several tools for LXC management, amongst them is lxc-deploy.

TBD

TODO Through docker-build-charm for docker image creation

Requires 0k-docker package that holds several tools for docker management, amongst them is docker-build-charm.

docker-build-charm will use the install recipes in a charm to basically mimic the Dockerfile purpose and create a docker image for a specific service.

TBD

TODO Through 0k-charm for bare hosts installs

Requires 0k-charm package to get the charm command line util.

TBD

Installation

Most tools should check the CHARM_STORE bash environment variable that should be the path to reach the root of this repository. If not defined, most tools will look in /srv/charm-store by default.