Loading .env.default +50 −29 Original line number Diff line number Diff line Loading @@ -2,27 +2,17 @@ ALERTMANAGER_IMAGE_VERSION= BAZARR_GPID= BAZARR_IMAGE_VERSION= BAZARR_PUID= BITWARDEN_IMAGE_VERSION= CADVISOR_IMAGE_VERSION= CIAO_IMAGE_VERSION= CIAO_PROMETHEUS_ENABLED= CODIMD_IMAGE_VERSION= ELASTICSEARCH_CLUSTER_NAME= ELASTICSEARCH_DISCOVERY_TYPE= ELASTICSEARCH_IMAGE_VERSION= ELASTICSEARCH_JAVA_OPTS= ELASTICSEARCH_MEMORY_LOCK= FRAMADATE_ADMIN_PASSWORD= FRAMADATE_IMAGE_VERSION= FRAMADATE_MYSQL_DATABASE= FRAMADATE_MYSQL_PASSWORD= FRAMADATE_MYSQL_ROOT_PASSWORD= FRAMADATE_MYSQL_USER= GITLAB_IMAGE_VERSION= GITLAB_RUNNER_IMAGE_VERSION= GRAFANA_IMAGE_VERSION= HOME= HOME_ASSISTANT_IMAGE_VERSION= JACKETT_GPID= JACKETT_IMAGE_VERSION= JACKETT_PUID= Loading @@ -38,19 +28,12 @@ NEXTCLOUD_MYSQL_USER= NGINX_IMAGE_VERSION= NODE_EXPORTER_IMAGE_VERSION= PROMETHEUS_IMAGE_VERSION= REMOTELY_IMAGE_VERSION= ROOT_EMAIL= SEARXNG_IMAGE_VERSION= SHARELATEX_IMAGE_VERSION= SITE= SONARR_GPID= SONARR_IMAGE_VERSION= SONARR_PUID= TOR_CONTACT_GPG_FINGERPRINT= TOR_RELAY_BANDWIDTH_BURST= TOR_RELAY_BANDWIDTH_RATE= TOR_RELAY_NICKNAME= TOR_RELAY_TYPE= TRAEFIK_CHECK_NEW_VERSION= TRAEFIK_EXPOSED_BY_DEFAULT= TRAEFIK_IMAGE_VERSION= Loading @@ -59,21 +42,59 @@ TRAEFIK_PLUGINS= TRAEFIK_SEND_ANONYMOUS_USAGE= TRAEFIK_WEBSECURE_ENTRYPOINT= TRAEFIK_WEB_ENTRYPOINT= TRANSMISSION_IMAGE_VERSION= TRANSMISSION_PGID= TRANSMISSION_PUID= TRANSMISSION_WEB_HOME= TZ= USERNAME= USERS= VPN_ADDL_PASSWORDS= VPN_ADDL_USERS= VPN_IMAGE_VERSION= VPN_IPSEC_PSK= VPN_PASSWORD= VPN_USER= WATCHTOWER_CLEANUP= WATCHTOWER_IMAGE_VERSION= WATCHTOWER_ROLLING_RESTART= WATCHTOWER_SCHEDULE= WORDPRESS_IMAGE_VERSION= ALERTMANAGER_IMAGE_VERSION= BAZARR_GPID= BAZARR_IMAGE_VERSION= BAZARR_PUID= CADVISOR_IMAGE_VERSION= CIAO_IMAGE_VERSION= CIAO_PROMETHEUS_ENABLED= ELASTICSEARCH_CLUSTER_NAME= ELASTICSEARCH_DISCOVERY_TYPE= ELASTICSEARCH_IMAGE_VERSION= ELASTICSEARCH_JAVA_OPTS= ELASTICSEARCH_MEMORY_LOCK= GITLAB_IMAGE_VERSION= GITLAB_RUNNER_IMAGE_VERSION= GRAFANA_IMAGE_VERSION= JACKETT_GPID= JACKETT_IMAGE_VERSION= JACKETT_PUID= KIBANA_IMAGE_VERSION= LOGSTASH_IMAGE_VERSION= MUMBLE_IMAGE_VERSION= MUMBLE_SUPERUSER_PASSWORD= NEXTCLOUD_IMAGE_VERSION= NEXTCLOUD_MYSQL_DATABASE= NEXTCLOUD_MYSQL_PASSWORD= NEXTCLOUD_MYSQL_ROOT_PASSWORD= NEXTCLOUD_MYSQL_USER= NGINX_IMAGE_VERSION= NODE_EXPORTER_IMAGE_VERSION= PROMETHEUS_IMAGE_VERSION= ROOT_EMAIL= SEARXNG_IMAGE_VERSION= SITE= SONARR_GPID= SONARR_IMAGE_VERSION= SONARR_PUID= TRAEFIK_CHECK_NEW_VERSION= TRAEFIK_EXPOSED_BY_DEFAULT= TRAEFIK_IMAGE_VERSION= TRAEFIK_LOG_LEVEL= TRAEFIK_PLUGINS= TRAEFIK_SEND_ANONYMOUS_USAGE= TRAEFIK_WEBSECURE_ENTRYPOINT= TRAEFIK_WEB_ENTRYPOINT= TZ= USERS= WATCHTOWER_CLEANUP= WATCHTOWER_IMAGE_VERSION= WATCHTOWER_ROLLING_RESTART= WATCHTOWER_SCHEDULE= README.md.orig 0 → 100644 +155 −0 Original line number Diff line number Diff line # Server configuration [](https://discord.gg/zQV6m9Jk6Z) Your (my) own server configuration, managed by docker-compose, with comprehensive default configuration. ## Setup IF you are using [docker compose version <2.20](https://docs.docker.com/compose/multiple-compose-files/include/), you need to use the following bash command to use this project: ```bash docker-compose () { docker-compose $(find -name 'docker-compose.*.yml' -type f -printf '%p\t%d\n' 2>/dev/null | sort -n -k2 | cut -f 1 | awk '{print "-f "$0}') $@ } ``` ### Run ```bash SITE=tom.moulard.org docker-compose up -d ``` Now you have your own server configuration. To be a little more consistent with the management, you can use a `.env` file and do: ```bash cp .env.default .env ``` And edit the `.env` file to use the correct configuration. The `docker-compose` function gather all docker-compose files in order to have the whole configuration in one place (see `docker-compose config`). ### Tear down ```bash docker-compose down ``` ### Services list There **should** be only one service by folder: For example, le folder `traefik/` contains all the necessary configuration to run the `traefik` service. Thus each folder represent an available service. The directory must follow the following architecture: ``` service/ ├── conf │ └── ... ├── data │ └── ... ├── docker-compose.servicename.yml ├── logs │ ├── access.log │ └── error.log └── README.md ``` If the service you are adding can use volumes: - `data/`, is where to store to service data - `conf/`, is where to store to service configuration - `logs/`, is where to store to service logs (others than Docker logs) Feel free to do a Pull Request to add your ideas. [more ideas](https://github.com/awesome-selfhosted/awesome-selfhosted) ## Configuration Don't forget to change: - db passwords (might not be needed since they are beyond the reverse proxy) - VPN secrets (if none provided, they are generated directly). Configuration files are: `docker-compose.yml`, `nginx.conf` To set the password: ```bash echo "USERS=$(htpasswd -nB $USER)" >> .env ``` You can add a new set of credentials by editing the .env file like ```env USERS=toto:pass,tata:pass, ... ``` The `.env.default` is generated using this command: ```bash grep '${' **/docker-compose.*.yml | sed "s/.*\${\(.*\)}.*/\1/g" | cut -d":" -f 1 | sort -u | sort | xargs -I % echo "%=" >> .env.default ``` ### For local developments Edit the file `/etc/hosts` to provide the reverse proxy with good URLs. For example, adding this in your `/etc/hosts` will allow to run and debug the Traefik service locally: ```bash 127.0.0.1 traefik.moulard.org ``` ### Scaling up ```bash docker-compose scale nginx=2 ``` ## Tests ### Lint ! Warning: This is enforced for all PRs. We are using yamllint to lint our yaml files. You can install it by looking at the [official documentation](https://yamllint.readthedocs.io/en/stable/quickstart.html#installation). Once installed, you can run the following command to lint all the yaml files: ```bash yamllint . ``` ### docker-compose config ! Warning: This is enforced for all PRs. You can run the following command to check that the docker-compose files are correctly written: ```bash ./test.sh ``` It tests that: - all docker-compose files are valid - all docker-compose files are parsable - all docker-compose files are consistent with the test_config.yml file - all environment variables are set inside the `.env.default` file Once this shell scritp is run, if the tests failes, you can see a bunch of modified files (e.g., `test_config.yml`) that indicates what is wrong. Note that the GitHub Action will run this script for you, and provides a `patch.patch` file that **should** solve most of your issues. # Authors Main author: - [Tom](http://tom.moulard.org) Gitlab helper: - [michel_k](mailto:thomas.michelot@epita.fr) Discord MusicBot/minecraft: - [huvell_m](mailto:martin.huvelle@epita.fr), see PR [#6](https://github.com/tomMoulard/make-my-server/pull/6) README.md.rej 0 → 100644 +8 −0 Original line number Diff line number Diff line --- README.md +++ README.md @@ -0,0 +1,5 @@ +# theia + +https://github.com/eclipse-theia/theia + +Eclipse Theia is a cloud & desktop IDE framework implemented in TypeScript. bazarr/docker-compose.bazarr.yml +1 −2 Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ version: '2' services: bazarr: image: 'linuxserver/bazarr:${BAZARR_IMAGE_VERSION:-v1.2.2}' image: 'linuxserver/bazarr:${BAZARR_IMAGE_VERSION:-latest}' environment: PGID: '${BAZARR_GPID:-1000}' PUID: '${BAZARR_PUID:-1000}' Loading @@ -13,7 +13,6 @@ services: traefik.http.routers.bazarr.rule: 'Host(`bazarr.${SITE:-localhost}`)' traefik.http.services.bazarr.loadbalancer.server.port: 8080 links: - 'transmission' - 'jackett' - 'sonarr' networks: Loading bitwarden/.gitignoredeleted 100644 → 0 +0 −1 Original line number Diff line number Diff line data/ Loading
.env.default +50 −29 Original line number Diff line number Diff line Loading @@ -2,27 +2,17 @@ ALERTMANAGER_IMAGE_VERSION= BAZARR_GPID= BAZARR_IMAGE_VERSION= BAZARR_PUID= BITWARDEN_IMAGE_VERSION= CADVISOR_IMAGE_VERSION= CIAO_IMAGE_VERSION= CIAO_PROMETHEUS_ENABLED= CODIMD_IMAGE_VERSION= ELASTICSEARCH_CLUSTER_NAME= ELASTICSEARCH_DISCOVERY_TYPE= ELASTICSEARCH_IMAGE_VERSION= ELASTICSEARCH_JAVA_OPTS= ELASTICSEARCH_MEMORY_LOCK= FRAMADATE_ADMIN_PASSWORD= FRAMADATE_IMAGE_VERSION= FRAMADATE_MYSQL_DATABASE= FRAMADATE_MYSQL_PASSWORD= FRAMADATE_MYSQL_ROOT_PASSWORD= FRAMADATE_MYSQL_USER= GITLAB_IMAGE_VERSION= GITLAB_RUNNER_IMAGE_VERSION= GRAFANA_IMAGE_VERSION= HOME= HOME_ASSISTANT_IMAGE_VERSION= JACKETT_GPID= JACKETT_IMAGE_VERSION= JACKETT_PUID= Loading @@ -38,19 +28,12 @@ NEXTCLOUD_MYSQL_USER= NGINX_IMAGE_VERSION= NODE_EXPORTER_IMAGE_VERSION= PROMETHEUS_IMAGE_VERSION= REMOTELY_IMAGE_VERSION= ROOT_EMAIL= SEARXNG_IMAGE_VERSION= SHARELATEX_IMAGE_VERSION= SITE= SONARR_GPID= SONARR_IMAGE_VERSION= SONARR_PUID= TOR_CONTACT_GPG_FINGERPRINT= TOR_RELAY_BANDWIDTH_BURST= TOR_RELAY_BANDWIDTH_RATE= TOR_RELAY_NICKNAME= TOR_RELAY_TYPE= TRAEFIK_CHECK_NEW_VERSION= TRAEFIK_EXPOSED_BY_DEFAULT= TRAEFIK_IMAGE_VERSION= Loading @@ -59,21 +42,59 @@ TRAEFIK_PLUGINS= TRAEFIK_SEND_ANONYMOUS_USAGE= TRAEFIK_WEBSECURE_ENTRYPOINT= TRAEFIK_WEB_ENTRYPOINT= TRANSMISSION_IMAGE_VERSION= TRANSMISSION_PGID= TRANSMISSION_PUID= TRANSMISSION_WEB_HOME= TZ= USERNAME= USERS= VPN_ADDL_PASSWORDS= VPN_ADDL_USERS= VPN_IMAGE_VERSION= VPN_IPSEC_PSK= VPN_PASSWORD= VPN_USER= WATCHTOWER_CLEANUP= WATCHTOWER_IMAGE_VERSION= WATCHTOWER_ROLLING_RESTART= WATCHTOWER_SCHEDULE= WORDPRESS_IMAGE_VERSION= ALERTMANAGER_IMAGE_VERSION= BAZARR_GPID= BAZARR_IMAGE_VERSION= BAZARR_PUID= CADVISOR_IMAGE_VERSION= CIAO_IMAGE_VERSION= CIAO_PROMETHEUS_ENABLED= ELASTICSEARCH_CLUSTER_NAME= ELASTICSEARCH_DISCOVERY_TYPE= ELASTICSEARCH_IMAGE_VERSION= ELASTICSEARCH_JAVA_OPTS= ELASTICSEARCH_MEMORY_LOCK= GITLAB_IMAGE_VERSION= GITLAB_RUNNER_IMAGE_VERSION= GRAFANA_IMAGE_VERSION= JACKETT_GPID= JACKETT_IMAGE_VERSION= JACKETT_PUID= KIBANA_IMAGE_VERSION= LOGSTASH_IMAGE_VERSION= MUMBLE_IMAGE_VERSION= MUMBLE_SUPERUSER_PASSWORD= NEXTCLOUD_IMAGE_VERSION= NEXTCLOUD_MYSQL_DATABASE= NEXTCLOUD_MYSQL_PASSWORD= NEXTCLOUD_MYSQL_ROOT_PASSWORD= NEXTCLOUD_MYSQL_USER= NGINX_IMAGE_VERSION= NODE_EXPORTER_IMAGE_VERSION= PROMETHEUS_IMAGE_VERSION= ROOT_EMAIL= SEARXNG_IMAGE_VERSION= SITE= SONARR_GPID= SONARR_IMAGE_VERSION= SONARR_PUID= TRAEFIK_CHECK_NEW_VERSION= TRAEFIK_EXPOSED_BY_DEFAULT= TRAEFIK_IMAGE_VERSION= TRAEFIK_LOG_LEVEL= TRAEFIK_PLUGINS= TRAEFIK_SEND_ANONYMOUS_USAGE= TRAEFIK_WEBSECURE_ENTRYPOINT= TRAEFIK_WEB_ENTRYPOINT= TZ= USERS= WATCHTOWER_CLEANUP= WATCHTOWER_IMAGE_VERSION= WATCHTOWER_ROLLING_RESTART= WATCHTOWER_SCHEDULE=
README.md.orig 0 → 100644 +155 −0 Original line number Diff line number Diff line # Server configuration [](https://discord.gg/zQV6m9Jk6Z) Your (my) own server configuration, managed by docker-compose, with comprehensive default configuration. ## Setup IF you are using [docker compose version <2.20](https://docs.docker.com/compose/multiple-compose-files/include/), you need to use the following bash command to use this project: ```bash docker-compose () { docker-compose $(find -name 'docker-compose.*.yml' -type f -printf '%p\t%d\n' 2>/dev/null | sort -n -k2 | cut -f 1 | awk '{print "-f "$0}') $@ } ``` ### Run ```bash SITE=tom.moulard.org docker-compose up -d ``` Now you have your own server configuration. To be a little more consistent with the management, you can use a `.env` file and do: ```bash cp .env.default .env ``` And edit the `.env` file to use the correct configuration. The `docker-compose` function gather all docker-compose files in order to have the whole configuration in one place (see `docker-compose config`). ### Tear down ```bash docker-compose down ``` ### Services list There **should** be only one service by folder: For example, le folder `traefik/` contains all the necessary configuration to run the `traefik` service. Thus each folder represent an available service. The directory must follow the following architecture: ``` service/ ├── conf │ └── ... ├── data │ └── ... ├── docker-compose.servicename.yml ├── logs │ ├── access.log │ └── error.log └── README.md ``` If the service you are adding can use volumes: - `data/`, is where to store to service data - `conf/`, is where to store to service configuration - `logs/`, is where to store to service logs (others than Docker logs) Feel free to do a Pull Request to add your ideas. [more ideas](https://github.com/awesome-selfhosted/awesome-selfhosted) ## Configuration Don't forget to change: - db passwords (might not be needed since they are beyond the reverse proxy) - VPN secrets (if none provided, they are generated directly). Configuration files are: `docker-compose.yml`, `nginx.conf` To set the password: ```bash echo "USERS=$(htpasswd -nB $USER)" >> .env ``` You can add a new set of credentials by editing the .env file like ```env USERS=toto:pass,tata:pass, ... ``` The `.env.default` is generated using this command: ```bash grep '${' **/docker-compose.*.yml | sed "s/.*\${\(.*\)}.*/\1/g" | cut -d":" -f 1 | sort -u | sort | xargs -I % echo "%=" >> .env.default ``` ### For local developments Edit the file `/etc/hosts` to provide the reverse proxy with good URLs. For example, adding this in your `/etc/hosts` will allow to run and debug the Traefik service locally: ```bash 127.0.0.1 traefik.moulard.org ``` ### Scaling up ```bash docker-compose scale nginx=2 ``` ## Tests ### Lint ! Warning: This is enforced for all PRs. We are using yamllint to lint our yaml files. You can install it by looking at the [official documentation](https://yamllint.readthedocs.io/en/stable/quickstart.html#installation). Once installed, you can run the following command to lint all the yaml files: ```bash yamllint . ``` ### docker-compose config ! Warning: This is enforced for all PRs. You can run the following command to check that the docker-compose files are correctly written: ```bash ./test.sh ``` It tests that: - all docker-compose files are valid - all docker-compose files are parsable - all docker-compose files are consistent with the test_config.yml file - all environment variables are set inside the `.env.default` file Once this shell scritp is run, if the tests failes, you can see a bunch of modified files (e.g., `test_config.yml`) that indicates what is wrong. Note that the GitHub Action will run this script for you, and provides a `patch.patch` file that **should** solve most of your issues. # Authors Main author: - [Tom](http://tom.moulard.org) Gitlab helper: - [michel_k](mailto:thomas.michelot@epita.fr) Discord MusicBot/minecraft: - [huvell_m](mailto:martin.huvelle@epita.fr), see PR [#6](https://github.com/tomMoulard/make-my-server/pull/6)
README.md.rej 0 → 100644 +8 −0 Original line number Diff line number Diff line --- README.md +++ README.md @@ -0,0 +1,5 @@ +# theia + +https://github.com/eclipse-theia/theia + +Eclipse Theia is a cloud & desktop IDE framework implemented in TypeScript.
bazarr/docker-compose.bazarr.yml +1 −2 Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ version: '2' services: bazarr: image: 'linuxserver/bazarr:${BAZARR_IMAGE_VERSION:-v1.2.2}' image: 'linuxserver/bazarr:${BAZARR_IMAGE_VERSION:-latest}' environment: PGID: '${BAZARR_GPID:-1000}' PUID: '${BAZARR_PUID:-1000}' Loading @@ -13,7 +13,6 @@ services: traefik.http.routers.bazarr.rule: 'Host(`bazarr.${SITE:-localhost}`)' traefik.http.services.bazarr.loadbalancer.server.port: 8080 links: - 'transmission' - 'jackett' - 'sonarr' networks: Loading