From d700a9fc132731bb8be1ef8cb17e93bf736ad4cb Mon Sep 17 00:00:00 2001 From: rnsrk Date: Tue, 22 Apr 2025 23:31:48 +0200 Subject: [PATCH] update readme --- README.md | 121 ++++++++++++++++++------------------------------------ 1 file changed, 40 insertions(+), 81 deletions(-) diff --git a/README.md b/README.md index e0eb0ee..15cce3b 100644 --- a/README.md +++ b/README.md @@ -28,35 +28,43 @@ You need [docker](https://docs.docker.com/get-started/get-docker/) and with [doc At least 6 cores with 16GB RAM 100GB SSD would be sufficent. ## Install -### Core environment -1) Copy the `.example-env` to `.env` and add you settings. +### Prerequisites +1) Copy the env and docker-compose.override.yml to the service directories via the script. +``` +./copy_overrides.bash +``` +2) Set your env variables in `./core/.env`, `./drupal/.env`, `./gitlab/.env`, `./hedgedoc/.env`, `./onlyoffice/.env`, `./nextcloud/.env`, `./openproject/.env`. + +3) Generate mailcow config ```bash -cp core/.example-env core/.env +cd mailcow +./geneare_config.bash +``` +4) Copy config to .env +```bash +cp mailcow.conf .env +``` +5) Create infrastructure via script: +``` +./create_infra.bash ``` -2) Start traefik, mariadb, postgres and adminer with: +### Core environment +1) Start traefik, mariadb, postgres and adminer with: ```bash docker compose -f core/docker-compose.yml up -d ``` ### Drupal -1) Copy the `.example-env` to `.env` and add you settings. -```bash -cp drupal/.example-env drupal/.env -``` -2) Create databse and Drupal root. -```bash -drupal/create_infra.bash -``` - -3) Start Drupal containers. +1) Set your env variables in +2) Start Drupal containers. ```bash docker compose -f drupal/docker-compose.yml up -d ``` #### Additional steps You may want to use Redis Caching. -3) add to drupal/sites/default/settings.php: +1) add to drupal/sites/default/settings.php: ```php // Redis Configuration $settings['redis.connection']['interface'] = 'PhpRedis'; @@ -71,17 +79,11 @@ $settings['cache']['bins']['config'] = 'cache.backend.chainedfast'; 4) Visit your Domain and install Drupal site. ### Gitlab -1) Copy the `.example-env` to `.env` and add you settings. -```bash -cp gitlab/.example-env gitlab/.env -``` - -2) Start gitlab. +1) Start gitlab. ```bash docker compose -f gitlab/docker-compose.yml up -d ``` - -3) Get your root password. +2) Get your root password. ```bash sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password @@ -90,21 +92,11 @@ sudo docker exec -it gitlab grep 'Password:' 4) Visit you domain and log in. ### Hedgedoc -1) Copy the `.example-env` to `.env` and add you settings. -```bash -cp hedgedoc/.example-env hedgedoc/.env -``` -2) Create database and Drupal root. -```bash -hedgedoc/create_infra.bash -``` - -3) Start containers. +1) Start containers. ```bash docker compose -f hedgedoc/docker-compose.yml up -d ``` - -4) Add your user. +2) Add your user. ```bash source hedgedoc/.env docker exec hedgedoc bin/manage_users --pass ${HEDGEDOC_USER_PASSWORD} --add ${HEDGEDOC_USER_EMAIL} @@ -112,17 +104,7 @@ docker exec hedgedoc bin/manage_users --pass ${HEDGEDOC_USER_PASSWORD} --add ${H ### Mailcow -1) Generate config -```bash -cd mailcow -./geneare_config.bash -``` -2) Copy config to .env -```bash -cp mailcow.conf .env -``` - -3) Start containers. +1) Start containers. ```bash docker compose docker-compose.yml up -d ``` @@ -136,55 +118,25 @@ docker compose docker-compose.yml up -d [dkim](https://docs.mailcow.email/getstarted/prerequisite-dns/) (You get your dkim key when you registered your email domain in mailcow ui) ### OnylOffice -1) Copy the `.example-env` to `.env` and add you settings. -```bash -cp onlyoffice/.example-env onlyoffice/.env -``` -2) Create database and Drupal root. -```bash -onlyoffice/create_infra.bash -``` - -3) Start containers. +1) Start containers. ```bash docker compose -f onlyoffice/docker-compose.yml up -d ``` ### Nextcloud 1) Start OnlyOffice first! - -2) Copy the `.example-env` to `.env` and add you settings. -```bash -cp nextcloud/.example-env nextcloud/.env -``` -3) Create database and Drupal root. -```bash -nextcloud/create_infra.bash -``` - -4) Start containers. +2) Start containers. ```bash docker compose -f nextcloud/docker-compose.yml up -d ``` - -5) Visit nextcloud domain and login with your .env credentials. +3) Visit nextcloud domain and login with your .env credentials. ### Openproject -1) Copy the `.example-env` to `.env` and add you settings. -```bash -cp nextcloud/.example-env nextcloud/.env -``` -2) Create database and Drupal root. -```bash -hedgedoc/create_infra.bash -``` - -3) Start containers. +1) Start containers. ```bash docker compose -f hedgedoc/docker-compose.yml up -d ``` - -4) Visit openproject domain and login with admin:admin and set new password. +2) Visit openproject domain and login with admin:admin and set new password. ## Roadmap - Tweak the core components and subservices for petter performance. @@ -194,3 +146,10 @@ docker compose -f hedgedoc/docker-compose.yml up -d - Better reuse of gits for updating and maintainment. ## Changelog +0.0.2 +- Make things more agnostic by + + use original gits + + have envs and overrides in parent dirs +- better automatisation with copy_overrides-bash and create_infra.bash on root level. +0.0.1 +- First release.