From 2951efa92ec7d1c9c7689309468b794c9e206eec Mon Sep 17 00:00:00 2001 From: TiynGER Date: Sun, 1 Nov 2020 16:06:38 +0100 Subject: [PATCH] markdown syntax: formatted all files with prettier --- wiki/airsonic.md | 14 +- wiki/bare-git.md | 30 ++-- wiki/bind.md | 18 +-- wiki/cups.md | 14 +- wiki/docker.md | 4 +- wiki/dovecot.md | 13 +- wiki/file-synchronization.md | 17 ++- wiki/flask.md | 16 ++- wiki/foldingathome.md | 35 +++-- wiki/git.md | 1 - wiki/gitea.md | 168 ++++++++++++----------- wiki/gopher-proxy.md | 20 +-- wiki/gopher-server.md | 33 +++-- wiki/hastebin.md | 29 ++-- wiki/homer.md | 58 ++++---- wiki/jellyfin.md | 56 ++++---- wiki/linux/arch-linux/installation.md | 121 +++++++++------- wiki/linux/arch-linux/thinkpad_x220.md | 23 ++-- wiki/linux/disk-management.md | 21 ++- wiki/linux/khal.md | 7 +- wiki/linux/khard.md | 16 ++- wiki/linux/neomutt.md | 17 ++- wiki/linux/sc-im.md | 3 +- wiki/linux/shells.md | 3 +- wiki/linux/wine.md | 15 +- wiki/linux/x11.md | 3 +- wiki/mail.md | 9 +- wiki/mordhau.md | 52 +++---- wiki/music.md | 9 +- wiki/nginx.md | 17 ++- wiki/office-software.md | 4 +- wiki/onedrive.md | 32 +++-- wiki/openvpn.md | 29 ++-- wiki/owncloud.md | 71 +++++----- wiki/pinedocs.md | 20 +-- wiki/plex.md | 29 ++-- wiki/portainer.md | 49 +++---- wiki/programming-languages/c-language.md | 2 +- wiki/proxmox.md | 3 +- wiki/radicale.md | 49 ++++--- wiki/samba.md | 65 ++++----- wiki/syncthing.md | 49 +++---- wiki/teamspeak.md | 37 ++--- wiki/todo-list.md | 18 +-- wiki/yourls.md | 90 ++++++------ 45 files changed, 763 insertions(+), 626 deletions(-) diff --git a/wiki/airsonic.md b/wiki/airsonic.md index af381a8..60a1daa 100644 --- a/wiki/airsonic.md +++ b/wiki/airsonic.md @@ -22,12 +22,12 @@ Set the following volumes with the -v tag. | Volume-Name | Container mount | Description | | ------------------ | --------------- | ----------------------- | -| `airsonic_config` | /config | Configuration files | -| `airsonic_media` | /media | Various other media | -| `media_playlists` | /playlists | Location for playlists | -| `media_music` | /music | Location for music | -| `media_audiobooks` | /audiobooks | Location for audiobooks | -| `media_podcasts` | /podcasts | location for podcasts | +| `airsonic_config` | `/config` | Configuration files | +| `airsonic_media` | `/media` | Various other media | +| `media_playlists` | `/playlists` | Location for playlists | +| `media_music` | `/music` | Location for music | +| `media_audiobooks` | `/audiobooks` | Location for audiobooks | +| `media_podcasts` | `/podcasts` | location for podcasts | #### Ports @@ -35,7 +35,7 @@ Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 4040 | 4040 | TCP | WebUI | +| `4040` | `4040` | TCP | WebUI | #### Rebuild diff --git a/wiki/bare-git.md b/wiki/bare-git.md index 517431d..68c6394 100644 --- a/wiki/bare-git.md +++ b/wiki/bare-git.md @@ -6,32 +6,34 @@ The official container and documentation was made by [jkarlos](https://hub.docker.com/r/jkarlos/git-server-docker). -##### Volumes +#### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | ----------------- | --------------------------- | -| git-server-repos | /git-server/repos | storage for git repos | -| git-server-keys | /git-server/keys | storage for user ssh keys | +| Volume-Name | Container mount | Description | +| ------------------ | ------------------- | ------------------------- | +| `git-server_repos` | `/git-server/repos` | storage for git repos | +| `git-server_keys` | `/git-server/keys` | storage for user ssh keys | + +#### Ports -##### Ports Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ------------------------------------- | -| 22 | 2222 | TCP | ssh port for accessing the git server | +| `22` | `2222` | TCP | ssh port for accessing the git server | -##### Rebuild +#### Rebuild -``` +```shell #!/bin/sh docker stop git-server docker rm git-server docker pull jkarlos/git-server-docker:latest docker run --name git-server \ - --restart unless-stopped \ - -p 2222:22 \ - -v git-server_repos:/git-server/repos \ - -v git-server_keys:/git-server/keys \ - -d jkarlos/git-server-docker + --restart unless-stopped \ + -p 2222:22 \ + -v git-server_repos:/git-server/repos \ + -v git-server_keys:/git-server/keys \ + -d jkarlos/git-server-docker ``` diff --git a/wiki/bind.md b/wiki/bind.md index 5ffd60d..f9b65ac 100644 --- a/wiki/bind.md +++ b/wiki/bind.md @@ -10,10 +10,10 @@ The official container and documentation was made by [ventz](https://hub.docker. Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ----------------------- | -| bind\_cache | /var/cache/bind | cache for dns | -| bind\_etc | /etc/bind | configuration for dns | +| Volume-Name | Container mount | Description | +| ------------ | ----------------- | --------------------- | +| `bind_cache` | `/var/cache/bind` | cache for dns | +| `bind_etc` | `/etc/bind` | configuration for dns | #### Ports @@ -21,16 +21,16 @@ Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------------- | -| 53 | 53 | TCP | dns protocol port | -| 53 | 53 | UDP | dns protocol port | +| `53` | `53` | TCP | dns protocol port | +| `53` | `53` | UDP | dns protocol port | #### Additional There are some special variables to set. -| Flag | Usage | -| ----- | ------------------------------------------------------- | -| --dns | set two of these flags for specific dns forward servers | +| Flag | Usage | +| ------- | ------------------------------------------------------- | +| `--dns` | set two of these flags for specific dns forward servers | #### Rebuild diff --git a/wiki/cups.md b/wiki/cups.md index d96f024..eb3f5d2 100644 --- a/wiki/cups.md +++ b/wiki/cups.md @@ -10,18 +10,18 @@ The official container and documentation was made by [olbat](https://hub.docker. Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ------------------------------- | -| cups | /etc/cups | configuration for printers, etc | -| /var/run/dbus | /var/run/dbus | connection to host dbus | +| Volume-Name | Container mount | Description | +| --------------- | --------------- | ------------------------------- | +| `cups` | `/etc/cups` | configuration for printers, etc | +| `/var/run/dbus` | `/var/run/dbus` | connection to host dbus | #### Ports Set the following ports with the -p tag. -| Container Port | Recommended outside port | Protocol | Description | -| -------------- | ------------------------ | -------- | ------------------ | -| 631 | 631 | TCP | cups server webui | +| Container Port | Recommended outside port | Protocol | Description | +| -------------- | ------------------------ | -------- | ----------------- | +| `631` | `631` | TCP | cups server webui | #### Additional diff --git a/wiki/docker.md b/wiki/docker.md index 54a1a5c..abc8e0c 100644 --- a/wiki/docker.md +++ b/wiki/docker.md @@ -6,5 +6,5 @@ Due to easy handling and reproducable environments it is a useful tool. ## Enable Nvidia GPUs To use Nvidia GPUs with docker you need to install the nvidia-cuda-toolkit. -There is a [guide on marmelab](https://marmelab.com/blog/2018/03/21/using-nvidia-gpu-within-docker-container.html) that focusses on that topic. - +There is a [guide on marmelab](https://marmelab.com/blog/2018/03/21/using-nvidia-gpu-within-docker-container.html) +that focusses on that topic. diff --git a/wiki/dovecot.md b/wiki/dovecot.md index e1469a7..5a4ae7f 100644 --- a/wiki/dovecot.md +++ b/wiki/dovecot.md @@ -12,19 +12,18 @@ It contains dovecot, antispam, antivirus, ssl, etc. The configuration is done automatically using scripts by tvial. First you need to download the essential setup files. -``` +```shell curl -o setup.sh https://raw.githubusercontent.com/tomav/docker-mailserver/master/setup.sh; chmod a+x ./setup.sh - curl -o docker-compose.yml https://raw.githubusercontent.com/tomav/docker-mailserver/master/docker-compose.yml.dist - curl -o .env https://raw.githubusercontent.com/tomav/docker-mailserver/master/.env.dist - curl -o env-mailserver https://raw.githubusercontent.com/tomav/docker-mailserver/master/env-mailserver.dist ``` -After that you need to edit the `.env` and the `env-mailserver` files to configure the mailserver. +After that you need to edit the `.env` and the `env-mailserver` files to +configure the mailserver. -You then need to start the container with the `rebuild.sh` and add email accounts using the following command. +You then need to start the container with the `rebuild.sh` and add email +accounts using the following command. `./setup.sh email add ()` @@ -36,7 +35,7 @@ Afterwards you're ready to go by once again running the `rebuild.sh` file. #### Rebuild -``` +```shell #!/bin/sh docker-compose down docker pull tvial/docker-mailserver:latest diff --git a/wiki/file-synchronization.md b/wiki/file-synchronization.md index d130053..7509c27 100644 --- a/wiki/file-synchronization.md +++ b/wiki/file-synchronization.md @@ -1,23 +1,28 @@ # File synchronization -Tools to synchronize data and so called clouds are pretty handy to use files on different machines. +Tools to synchronize data and so called clouds are pretty handy to use files on +different machines. There are tools with a main server and there are tools that don't need them. ## Synchronizing with main server -The biggest advantage of having a main server contain your data is that - as long as the server is online - +The biggest advantage of having a main server contain your data is that - as +long as the server is online - you can sync as you please. You do not need to care which machines are online to get all the files you need. If you are talking about a cloud, this is this. -- [Owncloud](owncloud.md) is a self-hostable, open-source file hosting service that can be dockerized. +- [Owncloud](owncloud.md) is a self-hostable, open-source file hosting service + that can be dockerized. - [Onedrive](onedrive.md) is a very popular piece of software despite being proprietary. -You can not self-host it, but you can run a dockerized client. + You can not self-host it, but you can run a dockerized client. ## Synchronizing without main server -If you can bare the difficulties ascending due to the mentioned above problems, this is probably a more +If you can bare the difficulties ascending due to the mentioned above problems, +this is probably a more safe way to "host" files. There is no single server as point of attack with all your data. -- [Syncthing](syncthing.md) is a free and open-source peer-to-peer file synchronization tool that can be dockerized. +- [Syncthing](syncthing.md) is a free and open-source peer-to-peer file + synchronization tool that can be dockerized. diff --git a/wiki/flask.md b/wiki/flask.md index d5e1906..74c49b0 100644 --- a/wiki/flask.md +++ b/wiki/flask.md @@ -7,29 +7,31 @@ The original container and documentation are made by [tiynger](https://hub.docker.com/r/tiynger/pythonflask). #### Volumes + Set the following volumes with the -v tag. | Volume-Name | Container mount | Description | | ----------- | --------------- | ------------------------------- | -| app | /flask | directory for flask application | +| `app` | `/flask` | directory for flask application | #### Ports + Set the following volumes with the -p tag. | Container-Port | Recommed outside port | Protocol | Description | | -------------- | --------------------- | -------- | ----------- | -| 5000 | 80 | TCP | HTTP port | +| `5000` | `80` | TCP | HTTP port | #### Rebuild -``` +```shell #!/bin/sh docker stop python-flask docker rm python-flask docker pull tiynger/pythonflask:latest docker run --name python-flask \ - --restart unless-stopped \ - -p "5000:5000" \ - -v python-flask:/flask \ - -d tiynger/pythonflask:latest + --restart unless-stopped \ + -p "5000:5000" \ + -v python-flask:/flask \ + -d tiynger/pythonflask:latest ``` diff --git a/wiki/foldingathome.md b/wiki/foldingathome.md index 5b5a9ab..19a22c2 100644 --- a/wiki/foldingathome.md +++ b/wiki/foldingathome.md @@ -7,38 +7,43 @@ The official container and documentation was made by [johnktims](https://hub.docker.com/r/johnktims/folding-at-home). #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 7396 | 7396 | TCP | WebUI | +| `7396` | `7396` | TCP | WebUI | #### Additional + There are some special variables to set. -| Flag | Usage | -| ------- | -------------------------------------- | -| --user | set your username | -| --power | set the default power to fold at home | -| --team | set your teamid to contribute points | +| Flag | Usage | +| --------- | ------------------------------------- | +| `--user` | set your username | +| `--power` | set the default power to fold at home | +| `--team` | set your teamid to contribute points | ##### GPU -To add a nvidia gpu add the `nvidia-docker-toolkit` or the recommended software for your gpu. + +To add a nvidia gpu add the `nvidia-docker-toolkit` or the recommended software +for your gpu. After that you can set you gpu to fold aswell by adding `--gpus=all`. +GPU support is also mentioned in [the docker entry](docker.md). #### Rebuild -``` +```shell #!/bin/sh docker stop folding-at-home docker rm folding-at-home docker pull johnktims/folding-at-home docker run --name folding-at-home \ - --restart unless-stopped \ - -it \ - -p 7396:7396 \ - -d johnktims/folding-at-home \ - --user=default \ - --power=full \ - --team=000000 + --restart unless-stopped \ + -it \ + -p 7396:7396 \ + -d johnktims/folding-at-home \ + --user=default \ + --power=full \ + --team=000000 ``` diff --git a/wiki/git.md b/wiki/git.md index 9170a84..395f4eb 100644 --- a/wiki/git.md +++ b/wiki/git.md @@ -24,4 +24,3 @@ Additionally it is easy to collaborate together. If you don't need a bloated web-interface a more basic approach is more than enough. - [git-server-docker](bare-git.md) is a pretty basic docker-container for git. - diff --git a/wiki/gitea.md b/wiki/gitea.md index 16affe7..48d308c 100644 --- a/wiki/gitea.md +++ b/wiki/gitea.md @@ -7,79 +7,89 @@ #### Gitea ##### Environment-variables -Set the following environment-variables in the `environment:` section of the docker-compose file. -| Name | Usage | Default | -| ------------------- | ------------------------------ | ------- | -| USER\_UID | User userid to run gitea | | -| USER\_GID | User groupid to run gitea | | -| DB\_TYPE | Specify database type | | -| DB\_HOST | Specify database host and port | | -| DB\_NAME | Specify Name of the database | | -| DB\_USER | Username for the database | | -| DB\_PASSWD | Password for the database | | +Set the following environment-variables in the `environment:` section of the +docker-compose file. +| Name | Usage | Default | +| ----------- | ------------------------------ | ------- | +| `USER_UID` | User userid to run gitea | | +| `USER_GID` | User groupid to run gitea | | +| `DB_TYPE` | Specify database type | | +| `DB_HOST` | Specify database host and port | | +| `DB_NAME` | Specify Name of the database | | +| `DB_USER` | Username for the database | | +| `DB_PASSWD` | Password for the database | | ##### Volumes + Set the following volumes in the `volumes:` section of the docker-compose file. -| Volume-Name | Container mount | Description | -| ---------------- | ---------------------- | ------------------------------ | -| data | /data | storage for data of git server | -| /etc/timezone | /etc/timezone:ro | link timezone | -| /etc/localtime | /etc/localtime | link localtime | +| Volume-Name | Container mount | Description | +| ---------------- | ------------------ | ------------------------------ | +| `data` | `/data` | storage for data of git server | +| `/etc/timezone` | `/etc/timezone:ro` | link timezone | +| `/etc/localtime` | `/etc/localtime` | link localtime | ##### Ports + Set the following ports in the `ports:` section. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ---------------------- | -| 3000 | 3000 | TCP | WebUI | -| 22 | 222 | TCP | ssh port of git server | +| `3000` | `3000` | TCP | WebUI | +| `22` | `222` | TCP | ssh port of git server | ##### Networks + Set the following networks in the `networks:` section of the docker-compose file. -| Name | Usage | -| ----- | --------------------- | -| gitea | connect db with gitea | +| Name | Usage | +| ------- | --------------------- | +| `gitea` | connect db with gitea | ##### Dependencies -Set the following dependencies in the `depends_on:` section of the docker-compose file. -| Name | Usage | -| ----- | --------------------- | -| db | Ensure db is running | +Set the following dependencies in the `depends_on:` section of the +docker-compose file. + +| Name | Usage | +| ---- | -------------------- | +| `db` | Ensure db is running | #### MySql ##### Environment-variables -Set the following environment-variables in the `environment:` section of the docker-compose file. -| Name | Usage | Default | -| ------------------- | ----------------------------- | ------- | -| MYSQL\_ROOT\_PASSWORD | set the mysql admin password | | -| MYSQL\_USER | set the mysql username | | -| MYSQL\_PASSWORD | set the mysql user password | | -| MYSQL\_Database | specify mysql database to use | | +Set the following environment-variables in the `environment:` section of the +docker-compose file. + +| Name | Usage | Default | +| --------------------- | ----------------------------- | ------- | +| `MYSQL_ROOT_PASSWORD` | set the mysql admin password | | +| `MYSQL_USER` | set the mysql username | | +| `MYSQL_PASSWORD` | set the mysql user password | | +| `MYSQL_Database` | specify mysql database to use | | ##### Volumes + Set the following volumes in the `volumes:` section of the docker-compose file. -| Volume-Name | Container mount | Description | -| ---------------- | ---------------------- | ---------------------------- | -| mysql | /var/lib/mysql | storage for owncloud data | +| Volume-Name | Container mount | Description | +| ----------- | ---------------- | ------------------------- | +| `mysql` | `/var/lib/mysql` | storage for owncloud data | ##### Networks + Set the following networks in the `networks:` section of the docker-compose file. -| Name | Usage | -| ----- | --------------------- | -| gitea | connect db with gitea | +| Name | Usage | +| ------- | --------------------- | +| `gitea` | connect db with gitea | #### Rebuild -``` +```shell #!/bin/sh docker-compose down docker-compose up -d @@ -87,52 +97,52 @@ docker-compose up -d #### Docker-Compose.yml -``` +```yml version: "2" networks: - gitea: - external: false + gitea: + external: false services: - server: - image: gitea/gitea:latest - environment: - - USER_UID=1000 - - USER_GID=1000 - - DB_TYPE=mysql - - DB_HOST=db:3306 - - DB_NAME=gitea - - DB_USER=gitea - - DB_PASSWD=gitea - restart: unless-stopped - networks: - - gitea - volumes: - - data:/data - - /etc/timezone:/etc/timezone:ro - - /etc/localtime:/etc/localtime:ro - ports: - - "3000:3000" - - "222:22" - depends_on: - - db - db: - image: mysql:5.7 - restart: unless-stopped - environment: - - MYSQL_ROOT_PASSWORD=gitea - - MYSQL_USER=gitea - - MYSQL_PASSWORD=gitea - - MYSQL_DATABASE=gitea - networks: - - gitea - volumes: - - mysql:/var/lib/mysql + server: + image: gitea/gitea:latest + environment: + - USER_UID=1000 + - USER_GID=1000 + - DB_TYPE=mysql + - DB_HOST=db:3306 + - DB_NAME=gitea + - DB_USER=gitea + - DB_PASSWD=gitea + restart: unless-stopped + networks: + - gitea + volumes: + - data:/data + - /etc/timezone:/etc/timezone:ro + - /etc/localtime:/etc/localtime:ro + ports: + - "3000:3000" + - "222:22" + depends_on: + - db + db: + image: mysql:5.7 + restart: unless-stopped + environment: + - MYSQL_ROOT_PASSWORD=gitea + - MYSQL_USER=gitea + - MYSQL_PASSWORD=gitea + - MYSQL_DATABASE=gitea + networks: + - gitea + volumes: + - mysql:/var/lib/mysql volumes: - data: - driver: local - mysql: - driver: local + data: + driver: local + mysql: + driver: local ``` diff --git a/wiki/gopher-proxy.md b/wiki/gopher-proxy.md index 2dba6c0..67dfcd6 100644 --- a/wiki/gopher-proxy.md +++ b/wiki/gopher-proxy.md @@ -7,29 +7,31 @@ The official container and documentation was made by [prologic](https://hub.docker.com/r/prologic/gopherproxy). #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ---------------------------------------- | -| 8000 | 8000 | TCP | port to proxy the gopher site as http to | +| `8000` | `8000` | TCP | port to proxy the gopher site as http to | #### Additional + There are some special variables to set. -| Flag | Usage | -| ---- | ------------------------------------------------------------- | -| -uri | define the gopher site to proxy (just 'domain.tld' is enough) | +| Flag | Usage | +| ------ | ------------------------------------------------------------- | +| `-uri` | define the gopher site to proxy (just 'domain.tld' is enough) | #### Rebuild -``` +```shell #!/bin/sh docker stop gopheroverhttp docker rm gopheroverhttp docker pull prologic/gopherproxy docker run --name gopheroverhttp \ - --restart unless-stopped \ - -p 8000:8000 \ - -d prologic/gopherproxy \ - -uri 'domain.tld' + --restart unless-stopped \ + -p 8000:8000 \ + -d prologic/gopherproxy \ + -uri 'domain.tld' ``` diff --git a/wiki/gopher-server.md b/wiki/gopher-server.md index 0b3fde4..a24ab77 100644 --- a/wiki/gopher-server.md +++ b/wiki/gopher-server.md @@ -7,37 +7,40 @@ The official container and documentation was made by [tiynger](https://hub.docker.com/r/tiynger/gopherserver). #### Environment-variables + Set the following variables with the -e tag. -| Name | Usage | Default | -| ------------- | --------------------------------------------------- | --------- | -| SERVER\_NAME | set this to your IP/Domain (no "gopher://" needed!) | localhost | +| Name | Usage | Default | +| ------------- | --------------------------------------------------- | ----------- | +| `SERVER_NAME` | set this to your IP/Domain (no "gopher://" needed!) | `localhost` | #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| -------------------- | --------------- | ----------------------------- | -| gopherwebdir | /var/gopher | directory for the gopher page | +| Volume-Name | Container mount | Description | +| -------------- | --------------- | ----------------------------- | +| `gopherwebdir` | `/var/gopher` | directory for the gopher page | #### Ports + Set the following ports with the -p tag. -| Container port | Recommended outside port | Protocol | Description | -| -------------- | ------------------------ | ---------- | ---------------------------- | -| 70 | 70 | TCP | port for the gopher-protocol | +| Container port | Recommended outside port | Protocol | Description | +| -------------- | ------------------------ | -------- | ---------------------------- | +| `70` | `70` | TCP | port for the gopher-protocol | #### Rebuild -``` +```shell #!/bin/sh docker stop gopherserver docker rm gopherserver docker pull tiynger/gopherserver docker run --name gopherserver \ - --restart unless-stopped \ - -p 70:70 \ - -v gopherserver:/var/gopher \ - -e SERVER_NAME='domain.tld' \ - -d tiynger/gopherserver + --restart unless-stopped \ + -p 70:70 \ + -v gopherserver:/var/gopher \ + -e SERVER_NAME='domain.tld' \ + -d tiynger/gopherserver ``` diff --git a/wiki/hastebin.md b/wiki/hastebin.md index 7508949..828056d 100644 --- a/wiki/hastebin.md +++ b/wiki/hastebin.md @@ -7,37 +7,40 @@ The official container and documentation was made by [rlister](https://hub.docker.com/r/rlister/hastebin). #### Environment-variables + Set the following variables with the -e tag. -| Name | Usage | Default | -| ------------ | ----------------------- | ------- | -| STORAGE_TYPE | Type to store the datas | file | +| Name | Usage | Default | +| -------------- | ----------------------- | ------- | +| `STORAGE_TYPE` | Type to store the datas | `file` | #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | -------------------------- | -| hastebin | /app/data | storage directory for data | +| Volume-Name | Container mount | Description | +| ----------- | --------------- | -------------------------- | +| `hastebin` | `/app/data` | storage directory for data | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 7777 | 7777 | TCP | WebUI | +| `7777` | `7777` | TCP | WebUI | #### Rebuild -``` +```shell #!/bin/sh docker stop hastebin docker rm hastebin docker pull rlister/hastebin:latest docker run --name hastebin \ - --restart unless-stopped \ - -p 7777:7777 \ - -v hastebin:/app/data \ - -e STORAGE_TYPE=file \ - -d rlister/hastebin:latest + --restart unless-stopped \ + -p 7777:7777 \ + -v hastebin:/app/data \ + -e STORAGE_TYPE=file \ + -d rlister/hastebin:latest ``` diff --git a/wiki/homer.md b/wiki/homer.md index 64b4827..9519c1c 100644 --- a/wiki/homer.md +++ b/wiki/homer.md @@ -7,64 +7,66 @@ The official container and documentation was made by [b4bz](https://hub.docker.com/r/b4bz/homer). #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ------------------------ | --------------- | ---------------------------------- | -| /current/dir/config.yml | /www/config.yml | configuration file for static page | -| homer | /www/assets | storage for icons, etc | +| Volume-Name | Container mount | Description | +| ------------------------- | ----------------- | ---------------------------------- | +| `/current/dir/config.yml` | `/www/config.yml` | configuration file for static page | +| `homer` | `/www/assets` | storage for icons, etc | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 8080 | 8080 | TCP | WebUI | +| `8080` | `8080` | TCP | WebUI | #### Rebuild -``` +```shell #!/bin/sh docker stop homer docker rm homer docker pull b4bz/homer:latest docker run --name homer \ - --restart unless-stopped \ - -p 8080:8080 \ - -v /root/docker/homer/config.yml:/www/config.yml \ - -v homer:/www/assets \ - -d b4bz/homer:latest + --restart unless-stopped \ + -p 8080:8080 \ + -v /root/docker/homer/config.yml:/www/config.yml \ + -v homer:/www/assets \ + -d b4bz/homer:latest ``` #### Configuration This is a sample config.yml: -``` +```yml title: "tmp" subtitle: "tmp" logo: "tmp" footer: "" message: - style: "" - title: "tmp" - content: "tmp" + style: "" + title: "tmp" + content: "tmp" links: - - name: "tmp" - icon: "tmp" - url: "tmp" - target: '_blank' + - name: "tmp" + icon: "tmp" + url: "tmp" + target: "_blank" services: - - name: "tmp" - icon: "tmp" - items: - - name: "tmp" - logo: "tmp" - subtitle: "tmp" - tag: "tmp" - url: "tmp" - target: '_blank' + - name: "tmp" + icon: "tmp" + items: + - name: "tmp" + logo: "tmp" + subtitle: "tmp" + tag: "tmp" + url: "tmp" + target: "_blank" ``` diff --git a/wiki/jellyfin.md b/wiki/jellyfin.md index 161324c..33acd91 100644 --- a/wiki/jellyfin.md +++ b/wiki/jellyfin.md @@ -8,38 +8,44 @@ The official container and documentation was made by [linuxserver](https://hub.d This docker-rebuild is made up by a `docker-compose.yml` file. #### Environment-variables + Set the following environment-variables in the `environment:` section of the docker-compose file. -| Name | Usage | Default | -| ------------------- | ---------------------------- | ------- | -| PUID | Userid to run the container | | -| PGID | Groupid to run the container | | -| TZ | specify the timezone | | +| Name | Usage | Default | +| ------ | ---------------------------- | ------- | +| `PUID` | Userid to run the container | | +| `PGID` | Groupid to run the container | | +| `TZ` | specify the timezone | | #### Volumes + Set the following volumes in the `volumes:` section of the docker-compose file. -| Volume-Name | Container mount | Description | -| ---------------- | ---------------------- | ------------------------------------ | -| config | /config | storage for config files of jellyfin | -| media\_movies | /data/movies | storage for movies | -| media\_tvshows | /data/tvshows | storage for tvshows | -| transcode | /transcode | tmp storage to transcode | +| Volume-Name | Container mount | Description | +| --------------- | --------------- | ------------------------------------ | +| `config` | `/config` | storage for config files of jellyfin | +| `media_movies` | `/data/movies` | storage for movies | +| `media_tvshows` | `/data/tvshows` | storage for tvshows | +| `transcode` | `/transcode` | tmp storage to transcode | -Because it is useful to have the possibility to use the `media_movies` and `media_tvshows` in multiple containers, -it is recommended to use them as external volumes (volumes section: `external: true` instead of `driver: local`). -To use the rebuild the volumes have to exist before creating the container (`docker volume create media_movies` and tvshows accordingly). +Because it is useful to have the possibility to use the `media_movies` and +`media_tvshows` in multiple containers, +it is recommended to use them as external volumes (volumes section: +`external: true` instead of `driver: local`). +To use the rebuild the volumes have to exist before creating the container +(`docker volume create media_movies` and tvshows accordingly). #### Ports + Set the following ports in the `ports:` section. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 8096 | 8096 | TCP | WebUI | +| `8096` | `8096` | TCP | WebUI | #### Rebuild -``` +```shell #!/bin/sh docker-compose down docker pull linuxserver/jellyfin:latest @@ -48,7 +54,7 @@ docker-compose up -d #### Docker-Compose.yml -``` +```yml version: "2" services: jellyfin: @@ -68,12 +74,12 @@ services: restart: unless-stopped volumes: - config: - driver: local - transcode: - driver: local - media_movies: - external: true - media_tvshows: - external: true + config: + driver: local + transcode: + driver: local + media_movies: + external: true + media_tvshows: + external: true ``` diff --git a/wiki/linux/arch-linux/installation.md b/wiki/linux/arch-linux/installation.md index 48d6af6..6d5f690 100644 --- a/wiki/linux/arch-linux/installation.md +++ b/wiki/linux/arch-linux/installation.md @@ -7,22 +7,26 @@ At the end of this guide a fully functional Arch Linux will be installed. ## 1. Preparation -Ahead of the installation an Arch boot-stick has to be created. The iso-file can be found on the [official website](https://www.archlinux.org/download/). +Ahead of the installation an Arch boot-stick has to be created. The iso-file can +be found on the [official website](https://www.archlinux.org/download/). The iso can be written on an USB-stick using `dd`. After that the USB can be plugged in the system on which Arch should be installed. Boot the target system and select `Boot Arch Linux (x86_64)`. -If you need to set the keyboard layout to anything other than english you can temporarily do so by using the `loadkeys` command. -This has to be followed by your country id (for example a german keyboard layout would be `de`,`de-latin1` or `de-latin1-nodeadkeys`. +If you need to set the keyboard layout to anything other than english you can +temporarily do so by using the `loadkeys` command. +This has to be followed by your country id (for example a german keyboard layout +would be `de`,`de-latin1` or `de-latin1-nodeadkeys`. ## 2. Formatting of the target drive Using `lsblk` you can list all the drives and partitions. Select a drive to install Arch on. In this step you can see if old partitions need to be deleted. -For reasons of simplicity the following guide will assume the selected drive to be `/dev/sda`. +For reasons of simplicity the following guide will assume the selected drive to +be `/dev/sda`. -### Clear disk completely: +### Clear disk completely This step can take quite a while especially for large drives. @@ -30,9 +34,10 @@ This step can take quite a while especially for large drives. Now all partitions should be removed. -### Create new partitions: +### Create new partitions -If you miss click during the progress of the following commands you can press `CTRL+C` to close the program. +If you miss click during the progress of the following commands you can press +`CTRL+C` to close the program. No changes will be made until the confirmation at the end. The swap partition will be created later under lvm. @@ -62,21 +67,24 @@ For this guide this partition is assumed to be `/dev/sda2`. - `cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda2` - encryption - confirm with `YES` - Now you can assign a passphrase. -The passphrase has to be entered at boot to decrypt the system. -Recovering of this passphrase is **not** possible. + The passphrase has to be entered at boot to decrypt the system. + Recovering of this passphrase is **not** possible. ## 4. Setup LVM -- `cryptsetup luksOpen /dev/sda2 lvm` - Opening encrypted partition and mapping it to `/dev/mapper/lvm` +- `cryptsetup luksOpen /dev/sda2 lvm` - Opening encrypted partition and mapping + it to `/dev/mapper/lvm` - `pvcreate /dev/mapper/lvm` - Create a LVM physical volume - `vgcreate main /dev/mapper/lvm` - Create LVM Volume Group -- `lvcreate -L 16G -n swap main` - Create Swap in LVM (recommended: swap size is equal to ram size) +- `lvcreate -L 16G -n swap main` - Create Swap in LVM (recommended: swap size + is equal to ram size) - `lvcreate -l 100%FREE -n root main` - Create LVM Logical Volume for / ## 5. Create filesystems and mounting them temporarily We have to find out which partition is our boot-partition. -Using `blkid | grep /dev/sda` once again, we can identify it by looking for the `EFI system partition` label. +Using `blkid | grep /dev/sda` once again, we can identify it by looking for the +`EFI system partition` label. The guide assumes this partition to be at `/dev/sda1`. - `mkfs.fat -F 32 -n UEFI /dev/sda1` - Assign filesystem of EFI partition @@ -95,61 +103,80 @@ Now the created filesystems will be mounted for the installation. In this step the country specific mirrorserver for the installation will be configured. This will improve the download speed. -- `cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak` - Create a backup of mirrorlist -- `grep -E -A 1 ".*Germany.*$" /etc/pacman.d/mirrorlist.bak | sed '/--/d' > /etc/pacman.d/mirrorlist` - Example command to only use *German* mirrors -- `cat /etc/pacman.d/mirrorlist` - Check if the file is to your liking. If it is not, you can just recover by using `mirrorlist.bak` +- `cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak` - Create a backup + of mirrorlist +- `grep -E -A 1 ".*Germany.*$" /etc/pacman.d/mirrorlist.bak | sed '/--/d' > /etc/pacman.d/mirrorlist` +- Example command to only use _German_ mirrors +- `cat /etc/pacman.d/mirrorlist` - Check if the file is to your liking. If it is + not, you can just recover by using `mirrorlist.bak` ## 7. Starting base installation Now you need a working internet connection. Plug in your lan cable or use `wifi-menu` to get a wireless connection. -- `pacstrap /mnt base base-devel dosfstools gptfdisk lvm2 linux linux-firmware vim networkmanager` - Installation of main system with needed tools +- `pacstrap /mnt base base-devel dosfstools gptfdisk lvm2 linux linux-firmware vim networkmanager` +- Installation of main system with needed tools - `genfstab -Up /mnt > /mnt/etc/fstab` - creation of fstab - `arch-chroot /mnt` - Switch into the newly installed system -- `echo ArchLinux > /etc/hostname` - Assign hostname. `ArchLinux` can be changed for any name of your preference. +- `echo ArchLinux > /etc/hostname` - Assign hostname. `ArchLinux` can be changed + for any name of your preference. ## 8. Set Region and Language -- `echo LANG=en\_US.UTF-8 > /etc/locale.conf` - Assign system Language to be english (you can use other languages, look into the `/etc/locale.gen` for a list of all available languages) -- `vim /etc/locale.gen` - Assigning system language by uncomment the lines depending on your needs. -In this example: -``` +- `echo LANG=en\_US.UTF-8 > /etc/locale.conf` - Assign system Language to be + english (you can use other languages, look into the `/etc/locale.gen` for a list of all available languages) +- `vim /etc/locale.gen` - Assigning system language by uncomment the lines + depending on your needs. + In this example: + +```txt en_US.UTF-8 UTF-8 ``` + - `locale-gen` - Generate languages - `echo KEYMAP=de-latin1-nodeadkeys > /etc/vconsole.conf` - set the keymap - `tzselect` - Set region -# 9. Configure and create kernel-image +## 9. Configure and create kernel-image - `vim /etc/mkinitcpio.conf` - - Search the line `MODULES=()` and change it to: - `MODULES=(ext4)` - - Search the line `HOOKS=([...])` and change it to: - `HOOKS=(base udev autodetect modconf block keyboard keymap encrypt lvm2 filesystems fsck shutdown)` + + - Search the line `MODULES=()` and change it to: + `MODULES=(ext4)` + - Search the line `HOOKS=([...])` and change it to: + `HOOKS=(base udev autodetect modconf block keyboard keymap encrypt lvm2 filesystems fsck shutdown)` + - `mkinitcpio -p linux` - generate Kernel-Image ## 10. Install and configure UEFI bootloader - `bootctl install` - Prepare bootloader - `ls -l /dev/disk/by-uuid` - find out the UUID -- `lsblk -no UUID /dev/sda2 | head -n1 > /boot/loader/entries/arch.conf` - print the UUID in your configuration file +- `lsblk -no UUID /dev/sda2 | head -n1 > /boot/loader/entries/arch.conf` - print + the UUID in your configuration file - `vim /boot/loader/entries/arch.conf` - Create configuration - - Change the config to look similar to this: - ``` - title Arch Linux - linux /vmlinuz-linux - initrd /initramfs-linux.img - options cryptdevice=UUID=:lvm:allow-discards root=/dev/mapper/main-root resume=/dev/mapper/main-swap rw quiet - ``` -- `cp /boot/loader/entries/arch.conf /boot/loader/entries/arch-fallback.conf` - Create a fallback + + - Change the config to look similar to this: + + ```txt + title Arch Linux + linux /vmlinuz-linux + initrd /initramfs-linux.img + options cryptdevice=UUID=:lvm:allow-discards root=/dev/mapper/main-root resume=/dev/mapper/main-swap rw quiet + ``` + +- `cp /boot/loader/entries/arch.conf /boot/loader/entries/arch-fallback.conf` +- Create a fallback - `vim /boot/loader/loader.conf` - Create loader configuration - - Insert the following text - ``` - timeout 0 - default arch - ``` + + - Insert the following text + + ```txt + timeout 0 + default arch + ``` + ## 11. Finishing base installation - `passwd` - set password for the root account @@ -159,12 +186,8 @@ en_US.UTF-8 UTF-8 - Now remove the Arch boot-stick - Start the device again -If the system is installed in a virtual environment or a system with deactivated UEFI, don't forget to enable the EFI option, otherwise the system won't boot. -Now you can follow my larbs installation script (`curl -o larbs.sh https://raw.githubusercontent.com/tiyn/larbs/master/larbs.sh` or go on to other guides. - -## Changelog and versions -> 03.04.2020 - Version 1.1en (based on 03.04.2020 - Version 1.1) -> -> 05.04.2020 - Version 2.1en (based on 05.04.2020 - Version 2.1) -> -> 28.05.2020 - Version 3.0en +If the system is installed in a virtual environment or a system with deactivated +UEFI, don't forget to enable the EFI option, otherwise the system won't boot. +Now you can follow my larbs installation script +(`curl -o larbs.sh https://raw.githubusercontent.com/tiyn/larbs/master/larbs.sh` +or go on to other guides. diff --git a/wiki/linux/arch-linux/thinkpad_x220.md b/wiki/linux/arch-linux/thinkpad_x220.md index 5914140..512f23d 100644 --- a/wiki/linux/arch-linux/thinkpad_x220.md +++ b/wiki/linux/arch-linux/thinkpad_x220.md @@ -9,11 +9,12 @@ This guide is done in collaboration with [rvbg.eu](https://wiki.rvbg.eu). ## Fan controlling -- ` yay -S lm_sensors thinkfan` - Install the needed utilities +- `yay -S lm_sensors thinkfan` - Install the needed utilities -- `sudo modprobe thinkpad_acpi` - After that load the kernel module thinkpad_acpi +- `sudo modprobe thinkpad_acpi` - After that load the kernel module `thinkpad_acpi` -- `sudo cp /usr/share/doc/thinkfan/examples/thinkfan.conf.simple /etc/thinkfan.conf` - Copy and configure the config file +- `sudo cp /usr/share/doc/thinkfan/examples/thinkfan.conf.simple /etc/thinkfan.conf` +Copy and configure the config file - `systemctl start thinkfan` - Start the thinkfan service @@ -26,9 +27,8 @@ This guide is done in collaboration with [rvbg.eu](https://wiki.rvbg.eu). - `sudo vim /boot/loader/entries/arch.conf` - Open the bootloader configuration - Go to the `options` line. Append the following. -``` -acpi_osi="!Windows 2012" -``` +`acpi_osi="!Windows 2012"` + - `shutdown -r now` - Reboot the system ## Activate battery options @@ -37,12 +37,14 @@ acpi_osi="!Windows 2012" - `yay -S acpi_call` - Enables battery charging stop at given capacity - `sudo vim /etc/tlp.conf` - Open the battery options - Change the following lines -``` + +```txt START_CHARGE_THRESH_BAT0=80 STOP_CHARGE_THRESH_BAT0=90 ``` The battery will start charging at 80 percent and stop charging at 90. + - `sudo tlp start` - Start service and save changed options - `sudo systemctl enable tlp.service` - Enable the service @@ -52,13 +54,16 @@ The battery will start charging at 80 percent and stop charging at 90. - `yay -S xrandr arandr` - Instll multimonitor tools - Dock the system - `arandr` - Setup the monitor configuration -- `dockd --config docked` - Save the changes (has to maybe be stopped by `CTRL + C`) +- `dockd --config docked` - Save the changes (has to maybe be stopped by +`CTRL + C`) - Undock the system - `arandr` - Setup the monitor configuration -- `dockd --config undocked` - Save the changes (has to maybe be stopped by `CTRL + C`) +- `dockd --config undocked` - Save the changes (has to maybe be stopped by +`CTRL + C`) - `systemctl enable acpid` - Activate ACPI listener - `systemctl start acpid` - Start ACPI listener Scripts to change configuration at docking/undocking + - For the docked configuration use `vim /etc/dockd/dock.hook` - For the undocked configuration use `vim /etc/dockd/undock.hook` diff --git a/wiki/linux/disk-management.md b/wiki/linux/disk-management.md index 5ad835b..ed47805 100644 --- a/wiki/linux/disk-management.md +++ b/wiki/linux/disk-management.md @@ -2,16 +2,21 @@ ## Grow non-LVM ext4 partition -ATTENTION: Please note that the partition to enlarge has to be the last one with the free space after it. +ATTENTION: Please note that the partition to enlarge has to be the last one with +the free space after it. SSH into the VM. + - run `lsblk` check if the disk size has changed - if not `reboot` the virtual machine In the following it is assumed that the partition to enlarge is `/dev/sda2` + - change the size of the partition with `parted /dev/sda` -- inside of parted run `print free` and check where the free space after your partition ends -- run `resizepart` and follow the instructions; End is the number you checked in the last step +- inside of parted run `print free` and check where the free space after your +partition ends +- run `resizepart` and follow the instructions; End is the number you checked in +the last step - `quit` parted Now you need to resize the filesystem with `resize2fs /dev/sda2`. @@ -22,10 +27,12 @@ Now you need to resize the filesystem with `resize2fs /dev/sda2`. source: [https://askubuntu.com/questions/197459/how-to-fix-sudo-unable-to-open-read-only-file-system] -Ususally the filesystem will go into read-only mode whe the system is running and there is a consistency error. +Ususally the filesystem will go into read-only mode whe the system is running +and there is a consistency error. To fix it run: + - `sudo fsck -Af -M` - check all filesystems -If `fsck` gets stuck after its version banner: -`fsck from util-linux 2.20.1` -you may want to try using the ext4-specific fsck: + If `fsck` gets stuck after its version banner: + `fsck from util-linux 2.20.1` + you may want to try using the ext4-specific fsck: - `fsck.ext4 -f /dev/sda1` diff --git a/wiki/linux/khal.md b/wiki/linux/khal.md index f1ba9a8..ffa1460 100644 --- a/wiki/linux/khal.md +++ b/wiki/linux/khal.md @@ -13,7 +13,7 @@ To sync calendars you'll need `vdirsyncer` aswell. - To configure vdirsyncer edit a file in `~/.config/vdirsyncer/config`. -``` +```txt [general] status_path = "~/.cache/vdirsyncer/status" @@ -41,8 +41,9 @@ password = "" - `vdirsyncer discober && vdirsyncer metasync` - After that initialize vdirsyncer. - `vdirsyncer sync` - Synchronize your data (put it in a crontab to run periodically) - Edit the `~/.config/khal/config` - - Insert the following lines -``` + - Insert the following lines + +```txt [calendars] [[calendars]] diff --git a/wiki/linux/khard.md b/wiki/linux/khard.md index c22d0d5..d03668a 100644 --- a/wiki/linux/khard.md +++ b/wiki/linux/khard.md @@ -12,8 +12,9 @@ To sync the data using CardDAV you'll need `vdirsyncer` aswell. ### Configuration - Edit the `~/.config/vdirsyncer/config`. - - Insert the following lines: -``` + - Insert the following lines: + +```txt [general] status_path = "~/.cache/vdirsyncer/status" @@ -34,12 +35,15 @@ username = "" password = "" auth = "basic" ``` + - `vdirsyncer discover && vdirsyncer metasync` - Initialize vdirsyncer -- `vdirsyncer sync` - Synchronize the addressbook (put this into a crontab to update periodically) +- `vdirsyncer sync` - Synchronize the addressbook (put this into a crontab to +update periodically) - Add and configure a config for khard - - `mkdir ~/.config/khard` - add a directory for the config - - `cp /usr/share/doc/khard/khard.conf.example ~/.config/khard/khard.conf` - Copy the example configuration - - Adjust `khard.conf` to your needs + - `mkdir ~/.config/khard` - add a directory for the config + - `cp /usr/share/doc/khard/khard.conf.example ~/.config/khard/khard.conf` - + Copy the example configuration + - Adjust `khard.conf` to your needs #### Mutt diff --git a/wiki/linux/neomutt.md b/wiki/linux/neomutt.md index 5229ba9..1ef2f9c 100644 --- a/wiki/linux/neomutt.md +++ b/wiki/linux/neomutt.md @@ -8,11 +8,13 @@ It can be easily configured using mutt-wizard. ### Arch-Linux - `yay -S neomutt isync msmtp pass` - Install all dependecies -- Install mutt-wizard from [github](https://github.com/LukeSmithxyz/mutt-wizard) (AUR is not up to date) +- Install mutt-wizard from [github](https://github.com/LukeSmithxyz/mutt-wizard) +(AUR is not up to date) #### Using mutt-wizard -After installation you're able to use the following commands, that will guide you through configuration. +After installation you're able to use the following commands, that will guide +you through configuration. `mw add` to add mailaccounts @@ -31,15 +33,16 @@ After installation you're able to use the following commands, that will guide yo ## Khard in NeoMutt - Edit `~/.config/mutt/muttrc` - - Append the following lines. -``` + - Append the following lines. + +```txt set query_command= "khard email --parsable --search-in-source-files %s" bind editor complete-query bind editor ^T complete macro index,pager A \ - "khard add-email" \ - "add the sender email address to khard" + "khard add-email" \ + "add the sender email address to khard" ``` + - You should now be able to tab-complete email-addresses in neomutt - You can also add new ones by pressing A - diff --git a/wiki/linux/sc-im.md b/wiki/linux/sc-im.md index 0b69cee..b253c14 100644 --- a/wiki/linux/sc-im.md +++ b/wiki/linux/sc-im.md @@ -22,4 +22,5 @@ You can insert new rows `ir`/`i3r` or columns `ic`/`i3c`. There are some functions you can use when in numbers mode. -- `=@sum(:)` - Summarize all number-entries in the range of given cells +- `=@sum(:)` - Summarize all number-entries in the range +of given cells diff --git a/wiki/linux/shells.md b/wiki/linux/shells.md index d7505eb..4199566 100644 --- a/wiki/linux/shells.md +++ b/wiki/linux/shells.md @@ -11,4 +11,5 @@ This is a guide on how to persistently change the symlink /bin/sh from bash to d - `yay -S dash` - Install dash - `sudo ln -sfT /bin/dash /bin/sh` - link /bin/sh to dash -- `sudo vim /usr/share/libalpm/hooks/bash-update.hook` - setup a hook to avoid bash resetting the symlink +- `sudo vim /usr/share/libalpm/hooks/bash-update.hook` - setup a hook to avoid +bash resetting the symlink diff --git a/wiki/linux/wine.md b/wiki/linux/wine.md index 8fd1017..a55da0f 100644 --- a/wiki/linux/wine.md +++ b/wiki/linux/wine.md @@ -5,11 +5,13 @@ Wine is a compatibility layer to run windows programs on linux machines. ## Setup - Enable multilib support in pacman - - `vim /etc/pacman.conf` - Uncomment the following lines - ``` - [multilib] - Include = /etc/pacman.d/mirrorlist - ``` + - `vim /etc/pacman.conf` - Uncomment the following lines + + ```txt + [multilib] + Include = /etc/pacman.d/mirrorlist + ``` + - `pacman -S wine winetricks` - Install wine and configuration helper ## Configuration @@ -17,5 +19,6 @@ Wine is a compatibility layer to run windows programs on linux machines. - Set the global variable `WINEPREFIX` to your liking, standard is `$HOME/.wine` - `winetricks` - run the installation of basic windows dependencies to the wine directory - Move the program you want to run to `$WINEPREFIX/drive_c/` -- `winetricks sandbox` - (Optional) if you don't want wine to set up directories or files into your home directory +- `winetricks sandbox` - (Optional) if you don't want wine to set up directories +or files into your home directory - `wine $WINEPREFIX/drive_c/` - Run the program with wine diff --git a/wiki/linux/x11.md b/wiki/linux/x11.md index b080fd6..b61dbe4 100644 --- a/wiki/linux/x11.md +++ b/wiki/linux/x11.md @@ -7,11 +7,12 @@ Linux can sometimes have problems with screen tearing. To get this working you need to change the `/etc/X11/xorg.conf.d/20-intel.conf` to: -``` +```txt Section "Device" Identifier "Intel Graphics" Driver "intel" Option "TearFree" "true" EndSection ``` + This was found on [maketecheasier](https://www.maketecheasier.com/get-rid-screen-tearing-linux). diff --git a/wiki/mail.md b/wiki/mail.md index 00cab7e..b730ae5 100644 --- a/wiki/mail.md +++ b/wiki/mail.md @@ -8,11 +8,14 @@ Nevertheless there are some really nice pieces of software to check out. If you want to host your own mail-server there are solutions with and without interfaces. -- [Dovecot](dovecot.md) is a simple mail server that can be dockerized and has no interface. +- [Dovecot](dovecot.md) is a simple mail server that can be dockerized and has + no interface. ## Client -If you don't have a built-in web interface for your mail-server you need some software to access your mails. +If you don't have a built-in web interface for your mail-server you need some +software to access your mails. And even if you have it can be useful to keep your mails synced locally on your pc. -- [Neomutt](linux/neomutt.md) is a terminal-based mail client, that has a simple interface. +- [Neomutt](linux/neomutt.md) is a terminal-based mail client, that has a simple + interface. diff --git a/wiki/mordhau.md b/wiki/mordhau.md index 5752f8d..b930bca 100644 --- a/wiki/mordhau.md +++ b/wiki/mordhau.md @@ -7,43 +7,45 @@ The official container and documentation was made by [tetricz](https://hub.docker.com/r/tetricz/mordhau-server). #### Environment-variables + Set the following variables with the -e tag. -| Name | Usage | Default | -| ---- | ---------------------------------------------------- | ------- | -| QUERYPORT | port for query mordhau | | -| GAME\_PORT | port for mordhau game | | -| BEACONPORT | port for mordhau beacon | | -| STEAM\_CONNECT | set to tell if you want to connect to steam | | -| STEAMID64 | set the serve owner steamid | | -| UID | users userid to run | | -| GID | users groupid to run | | -| GAME\_MODE | specify mordhau game mode | | -| PLAYER\_COUNT | set a playercount limit | | -| SERVER\_NAME | set a servername | | -| SERVER\_PASSWORD | set a password | | -| ADMIN\_PASSWORD | set an admin password | | +| Name | Usage | Default | +| ----------------- | ------------------------------------------- | ------- | +| `QUERYPORT` | port for query mordhau | | +| `GAME_PORT` | port for mordhau game | | +| `BEACONPORT` | port for mordhau beacon | | +| `STEAM_CONNECT` | set to tell if you want to connect to steam | | +| `STEAMID64` | set the serve owner steamid | | +| `UID` | users userid to run | | +| `GID` | users groupid to run | | +| `GAME_MODE` | specify mordhau game mode | | +| `PLAYER_COUNT` | set a playercount limit | | +| `SERVER_NAME` | set a servername | | +| `SERVER_PASSWORD` | set a password | | +| `ADMIN_PASSWORD` | set an admin password | | #### Volumes -Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | -------------------- | ---------------------------------------- | -| mordhau | /serverdata/mordhau | storage for mordhau server relevant data | -| mordhau\_steamcmd | /serverdata/steamcmd | storage for steam related data | +Set the following volumes with the -v tag. +| Volume-Name | Container mount | Description | +| ------------------ | ---------------------- | ---------------------------------------- | +| `mordhau` | `/serverdata/mordhau` | storage for mordhau server relevant data | +| `mordhau_steamcmd` | `/serverdata/steamcmd` | storage for steam related data | #### Ports + Set the following ports with the -p tag. -| Container Port | Recommended outside port | Protocol | Description | +| Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------------- | -| 7777 | 7777 | UDP | mordhau internal | -| 15000 | 15000 | UDP | mordhau internal | -| 27015 | 27015 | UDP | mordhau internal | +| `7777` | `7777` | UDP | mordhau internal | +| `15000` | `15000` | UDP | mordhau internal | +| `27015` | `27015` | UDP | mordhau internal | #### Start -``` +```shell #!/bin/sh docker pull tetricz/mordhau-server @@ -71,7 +73,7 @@ docker run --name=mordhau \ #### Stop -``` +```shell #/bin/sh docker stop mordhau diff --git a/wiki/music.md b/wiki/music.md index 709a647..462bbe9 100644 --- a/wiki/music.md +++ b/wiki/music.md @@ -1,12 +1,15 @@ # Music Music is a nice to have on your system. -There are multiple different approaches on how to get it working depending on your needs. -In general you need to consider if you want the music directly on your pc or access a server for it. +There are multiple different approaches on how to get it working depending on +your needs. +In general you need to consider if you want the music directly on your pc or +access a server for it. ## Server/Client If you want to keep your system clean of much data, you can use this kind of setup. There are differences depending on your preffered client interface. -- [Airsonic](airsonic.md) is a free fork of Subsonic, can be dockerized and has a web-interface. +- [Airsonic](airsonic.md) is a free fork of Subsonic, can be dockerized and has + a web-interface. diff --git a/wiki/nginx.md b/wiki/nginx.md index 7bfa0ec..a43d6a9 100644 --- a/wiki/nginx.md +++ b/wiki/nginx.md @@ -4,7 +4,8 @@ ### Docker -The easiest way to configure and run nginx is [ncdt](https://github.com/nasourso/nginx-certbot-docker-tui) by nasourso. +The easiest way to configure and run nginx is +[ncdt](https://github.com/nasourso/nginx-certbot-docker-tui) by nasourso. So the first step is downloading it. `wget https://raw.githubusercontent.com/nasourso/nginx-certbot-docker-tui/master/src/ncdt.sh` @@ -15,14 +16,18 @@ You can then configure reverse proxies by adding websites. #### Block remote port access -If you configured a reverse proxy to a port chances are you don't want the port to be accessed outside of the proxy. -Especially if you set up a authentication over nginx the open port will avoid the authentication. -This can be changed at the forwarded docker-service by replacing for example `-p 7000:7000` with `-p 172.17.0.1:7000:7000`. -This forces the docker container to only expose the port in the docker bridge network, effectively banning remote access. +If you configured a reverse proxy to a port chances are you don't want the port +to be accessed outside of the proxy. +Especially if you set up a authentication over nginx the open port will avoid +the authentication. +This can be changed at the forwarded docker-service by replacing for example +`-p 7000:7000` with `-p 172.17.0.1:7000:7000`. +This forces the docker container to only expose the port in the docker bridge +network, effectively banning remote access. #### Rebuild -``` +```shell #!/bin/sh docker-compose down docker pull nginx:latest diff --git a/wiki/office-software.md b/wiki/office-software.md index b33d8f5..22d3048 100644 --- a/wiki/office-software.md +++ b/wiki/office-software.md @@ -8,5 +8,5 @@ The software can vary in coverage and interface type. One of the most used file modification is done in csv or similar datatypes. -- [sc-im](linux/sc-im.md) is a simple table calculation program for linux with a terminal based interface. - +- [sc-im](linux/sc-im.md) is a simple table calculation program for linux with a + terminal based interface. diff --git a/wiki/onedrive.md b/wiki/onedrive.md index e1646f0..cca4739 100644 --- a/wiki/onedrive.md +++ b/wiki/onedrive.md @@ -7,33 +7,35 @@ The official container and documentation was made by [oznu](https://hub.docker.com/r/oznu/onedrive). #### Environment-variables + Set the following variables with the -e tag. -| Name | Usage | Default | -| ---- | -------- | ------- | -| PUID | UserID | | -| PGID | GroupID | | +| Name | Usage | Default | +| ------ | ------- | ------- | +| `PUID` | UserID | | +| `PGID` | GroupID | | #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ----------------------------------------------- | -| onedrive\_config | /config | configuration storage for the server connection | -| onedrive\_doc | /documents | storage for downloaded documents | +| Volume-Name | Container mount | Description | +| ----------------- | --------------- | ----------------------------------------------- | +| `onedrive_config` | `/config` | configuration storage for the server connection | +| `onedrive_doc` | `/documents` | storage for downloaded documents | #### Rebuild -``` +```shell #!/bin/sh docker stop onedrive docker rm onedrive docker pull oznu/onedrive:latest docker run --name onedrive \ - --restart unless-stopped \ - -v onedrive_config:/config \ - -v onedrive_doc:/documents \ - -e PUID=$(id -u) \ - -e PGID=$(id -g) \ - -d oznu/onedrive:latest + --restart unless-stopped \ + -v onedrive_config:/config \ + -v onedrive_doc:/documents \ + -e PUID=$(id -u) \ + -e PGID=$(id -g) \ + -d oznu/onedrive:latest ``` diff --git a/wiki/openvpn.md b/wiki/openvpn.md index 8da449c..32f661c 100644 --- a/wiki/openvpn.md +++ b/wiki/openvpn.md @@ -7,37 +7,40 @@ The official container and documentation was made by [kylemanna](https://hub.docker.com/r/kylemanna/openvpn). #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ------------------------ | -| ovpn | /etc/openvpn | storage for openvpn data | +| Volume-Name | Container mount | Description | +| ----------- | --------------- | ------------------------ | +| `ovpn` | `/etc/openvpn` | storage for openvpn data | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ------------ | -| 1194 | 1194 | UDP | openvpn port | +| `1194` | `1194` | UDP | openvpn port | #### Additional + There are some special variables to set. -| Flag | Usage | -| --------- | ---------------------- | -| --cap-add | add linux capabilities | +| Flag | Usage | +| ----------- | ---------------------- | +| `--cap-add` | add linux capabilities | #### Rebuild -``` +```shell #!/bin/sh docker stop openvpn docker rm openvpn docker pull kylemanna/openvpn docker run --name openvpn \ - --restart unless-stopped \ - --cap-add=NET_ADMIN \ - -p 1194:1194/udp \ - -v ovpn:/etc/openvpn \ - -d kylemanna/openvpn + --restart unless-stopped \ + --cap-add=NET_ADMIN \ + -p 1194:1194/udp \ + -v ovpn:/etc/openvpn \ + -d kylemanna/openvpn ``` diff --git a/wiki/owncloud.md b/wiki/owncloud.md index 04ca8e7..b3b14e7 100644 --- a/wiki/owncloud.md +++ b/wiki/owncloud.md @@ -14,10 +14,10 @@ The services in this files are explained seperately. Set the following volumes in the `volumes:` section of the docker-compose file. -| Volume-Name | Container mount | Description | -| ----------- | -------------------- | ---------------------------- | -| owncloud | /var/www/html | storage for owncloud plugins | -| config | /var/www/html/config | storage for owncloud config | +| Volume-Name | Container mount | Description | +| ----------- | ---------------------- | ---------------------------- | +| `owncloud` | `/var/www/html` | storage for owncloud plugins | +| `config` | `/var/www/html/config` | storage for owncloud config | ##### Ports @@ -25,29 +25,30 @@ Set the following ports in the `ports:` section. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 80 | 80 | TCP | WebUI | +| `80` | `80` | TCP | WebUI | #### Maria DB ##### Environment-variables -Set the following environment-variables in the `environment:` section of the docker-compose file. +Set the following environment-variables in the `environment:` section of the +docker-compose file. -| Name | Usage | Default | -| ------------------- | ---------------------------- | ------- | -| MYSQL\_ROOT\_PASSWORD | set the mysql admin password | | +| Name | Usage | Default | +| --------------------- | ---------------------------- | ------- | +| `MYSQL_ROOT_PASSWORD` | set the mysql admin password | | ##### Volumes Set the following volumes in the `volumes:` section of the docker-compose file. -| Volume-Name | Container mount | Description | -| ----------- | --------------- | ------------------------- | -| mariadb | /var/lib/mysql | storage for owncloud data | +| Volume-Name | Container mount | Description | +| ----------- | ---------------- | ------------------------- | +| `mariadb` | `/var/lib/mysql` | storage for owncloud data | #### Rebuild -``` +```shell #!/bin/sh docker-compose down docker pull owncloud @@ -57,11 +58,10 @@ docker-compose up -d #### Docker-Compose.yml -``` -version: '3.1' +```yml +version: "3.1" services: - owncloud: image: owncloud restart: unless-stopped @@ -75,7 +75,7 @@ services: image: mariadb restart: unless-stopped environment: - MYSQL_ROOT_PASSWORD: pass + MYSQL_ROOT_PASSWORD: pass volumes: - mariadb:/var/lib/mysql @@ -98,19 +98,19 @@ The original container and documentation are made by [tiynger](https://hub.docke Set the following variables with the -e tag. -| Name | Usage | Default | -| -------- | --------------------------------------------------- | --------- | -| USER | username of OwnCloud server | admin | -| PASSWORD | password of OwnCloud server | admin | -| URL | url of OwnCloud server (dont forget the http(s)://) | localhost | +| Name | Usage | Default | +| ---------- | --------------------------------------------------- | ----------- | +| `USER` | username of OwnCloud server | `admin` | +| `PASSWORD` | password of OwnCloud server | `admin` | +| `URL` | url of OwnCloud server (dont forget the http(s)://) | `localhost` | #### Additional There are some special variables to set. -| Flag | Usage | -| ------------------ | ---------------------------------------------------------- | -| --opt-log max-size | prevent log file from growing to large (`50m` recommended) | +| Flag | Usage | +| -------------------- | ---------------------------------------------------------- | +| `--opt-log max-size` | prevent log file from growing to large (`50m` recommended) | #### Volumes @@ -118,23 +118,23 @@ Set the following volumes with the -v tag. | Volume-Name | Container mount | Description | | ----------- | --------------- | ----------------------------------- | -| data | /data | directory for the owncloud contents | +| `data` | `/data` | directory for the owncloud contents | #### Rebuild -``` +```shell #!/bin/sh docker stop owncloudcli docker rm owncloudcli docker pull tiynger/owncloudclient docker run --name owncloudcli \ - --restart unless-stopped \ - -v owncloudcli:/data \ - -e USER='user' \ - -e PASSWORD='password' \ - -e URL='https://subdomain.domain.tld' \ - --log-opt max-size=50m \ - -d tiynger/owncloudclient + --restart unless-stopped \ + -v owncloudcli:/data \ + -e USER='user' \ + -e PASSWORD='password' \ + -e URL='https://subdomain.domain.tld' \ + --log-opt max-size=50m \ + -d tiynger/owncloudclient ``` ## Error handling @@ -142,7 +142,8 @@ docker run --name owncloudcli \ ### Problems with a locked file It is possible that you can't remove or move a locked file. -If this problem doesn't resolve after a restart you can try to disable locking in the owncloud config. +If this problem doesn't resolve after a restart you can try to disable locking +in the owncloud config. This is done by adding the line `'filelocking.enabled' => false,` into the file `config/config.php`. Then try to resolve the error. Afterwards enable locking again by removing the added line. diff --git a/wiki/pinedocs.md b/wiki/pinedocs.md index 731b9db..7b4ffb0 100644 --- a/wiki/pinedocs.md +++ b/wiki/pinedocs.md @@ -7,29 +7,31 @@ The official container and documentation was made by [xy2z](https://hub.docker.com/r/xy2z/pinedocs). #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ----------------------- | -| pinedocs | /data | storage for pinedocs | +| Volume-Name | Container mount | Description | +| ----------- | --------------- | -------------------- | +| `pinedocs` | `/data` | storage for pinedocs | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 80 | 80 | TCP | WebUI | +| `80` | `80` | TCP | WebUI | #### Rebuild -``` +```shell #!/bin/sh docker stop pinedocs docker rm pinedocs docker pull xy2z/pinedocs docker run --name pinedocs \ - --restart unless-stopped \ - -p 80:80 \ - -v pinedocs:/data \ - -d xy2z/pinedocs + --restart unless-stopped \ + -p 80:80 \ + -v pinedocs:/data \ + -d xy2z/pinedocs ``` diff --git a/wiki/plex.md b/wiki/plex.md index 8909c8d..3d7e1cd 100644 --- a/wiki/plex.md +++ b/wiki/plex.md @@ -7,37 +7,40 @@ The official container and documentation was made by [nasourso](https://hub.docker.com/r/nasourso/pltu). #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | --------------------------------------------------- | -| pltu | /cert | storage for openvpn certificate of server with plex | +| Volume-Name | Container mount | Description | +| ----------- | --------------- | --------------------------------------------------- | +| `pltu` | `/cert` | storage for openvpn certificate of server with plex | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 80 | 32400 | TCP | Plex webUI | +| `80` | `32400` | TCP | Plex webUI | #### Additional + There are some special variables to set. -| Flag | Usage | -| ------------ | ------------------------ | -| --privileged | is needed due to openvpn | +| Flag | Usage | +| -------------- | ------------------------ | +| `--privileged` | is needed due to openvpn | #### Rebuild -``` +```shell #!/bin/sh docker stop pltu docker rm pltu docker pull nasourso/pltu:latest docker run --name pltu \ - --restart unless-stopped \ - --privileged \ - -p 32400:80 \ - -v pltu:/cert/ \ - -d nasourso/pltu:latest + --restart unless-stopped \ + --privileged \ + -p 32400:80 \ + -v pltu:/cert/ \ + -d nasourso/pltu:latest ``` diff --git a/wiki/portainer.md b/wiki/portainer.md index a1b8025..b9b0cbc 100644 --- a/wiki/portainer.md +++ b/wiki/portainer.md @@ -7,33 +7,35 @@ The official container and documentation was made by [portainer](https://hub.docker.com/r/portainer/portainer). #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| -------------------- | -------------------- | ------------------------------------------------- | -| portainer | /data | configuration directory | -| /var/run/docker.sock | /var/run/docker.sock | connection to local docker containers and volumes | +| Volume-Name | Container mount | Description | +| ---------------------- | ---------------------- | ------------------------------------------------- | +| `portainer` | `/data` | configuration directory | +| `/var/run/docker.sock` | `/var/run/docker.sock` | connection to local docker containers and volumes | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 9000 | 9000 | TCP | WebUI | +| `9000` | `9000` | TCP | WebUI | #### Rebuild -``` +```shell #!/bin/sh docker stop portainer docker rm portainer docker pull portainer/portainer:latest docker run --name portainer \ - --restart unless-stopped \ - -p 9000:9000 \ - -v /var/run/docker.sock:/var/run/docker.sock \ - -v portainer:/data \ - -d portainer/portainer + --restart unless-stopped \ + -p 9000:9000 \ + -v /var/run/docker.sock:/var/run/docker.sock \ + -v portainer:/data \ + -d portainer/portainer ``` ## Setup Agent @@ -43,32 +45,33 @@ docker run --name portainer \ The official container and documentation was made by [portainer](https://hub.docker.com/r/portainer/agent). #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ----------------------- | ----------------------- | -------------------------------------- | -| /var/run/docker.sock | /var/run/docker.sock | connect your running docker containers | -| /var/lib/docker/volumes | /var/lib/docker/volumes | connect running docker volumes | +| Volume-Name | Container mount | Description | +| ------------------------- | ------------------------- | -------------------------------------- | +| `/var/run/docker.sock` | `/var/run/docker.sock` | connect your running docker containers | +| `/var/lib/docker/volumes` | `/var/lib/docker/volumes` | connect running docker volumes | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | -------------------- | -| 9001 | 9001 | TCP | Portainer agent port | +| `9001` | `9001` | TCP | Portainer agent port | #### Rebuild -``` +```shell #!/bin/sh docker stop portainer_agent docker rm portainer_agent docker pull portainer/agent:latest docker run --name portainer_agent \ - -p 9001:9001 \ - --restart unless-stopped \ - -v /var/run/docker.sock:/var/run/docker.sock \ - -v /var/lib/docker/volumes:/var/lib/docker/volumes \ - -d portainer/agent:latest + -p 9001:9001 \ + --restart unless-stopped \ + -v /var/run/docker.sock:/var/run/docker.sock \ + -v /var/lib/docker/volumes:/var/lib/docker/volumes \ + -d portainer/agent:latest ``` - diff --git a/wiki/programming-languages/c-language.md b/wiki/programming-languages/c-language.md index ec190e0..d5406db 100644 --- a/wiki/programming-languages/c-language.md +++ b/wiki/programming-languages/c-language.md @@ -13,4 +13,4 @@ To get a compiler for c there are a few options. ### Vim -The steps to make Vim a c IDE are described in [../linux/vim/c-language.md]. +The steps to make Vim a c IDE are described in [the vim section of this wiki](../linux/vim/c-language.md). diff --git a/wiki/proxmox.md b/wiki/proxmox.md index 6605a13..156c464 100644 --- a/wiki/proxmox.md +++ b/wiki/proxmox.md @@ -16,4 +16,5 @@ For example: To use GPUs or other PCI devices you need to work with PCI passthrough. For documentation you can look in the [Proxmox wiki](https://pve.proxmox.com/wiki/Pci_passthrough). -There is also an [article](https://www.reddit.com/r/homelab/comments/b5xpua/the_ultimate_beginners_guide_to_gpu_passthrough) on reddit, that focusses especially on windows 10 VMs with GPU passthrough. +There is also an[article](https://www.reddit.com/r/homelab/comments/b5xpua/the_ultimate_beginners_guide_to_gpu_passthrough) +on reddit, that focusses especially on windows 10 VMs with GPU passthrough. diff --git a/wiki/radicale.md b/wiki/radicale.md index aa85f06..1373c4a 100644 --- a/wiki/radicale.md +++ b/wiki/radicale.md @@ -10,48 +10,54 @@ The `latest` tag at the moment of writing this readme was corrupted. The last usable tag was used therefore to guarantee best performance for all users. #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | --------------------------- | -| radicale\_data | /data | storage for caldav | -| radicale\_config | /config | storage for radicale config | +| Volume-Name | Container mount | Description | +| ----------------- | --------------- | --------------------------- | +| `radicale_data` | `/data` | storage for caldav | +| `radicale_config` | `/config` | storage for radicale config | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ------------- | -| 5232 | 5232 | TCP | WebUI, caldav | +| `5232` | `5232` | TCP | WebUI, caldav | #### Additional + There are some special variables to set. -| Flag | Usage | -| ----------- | ---------------------------------------------------------------------- | -| --read-only | make radicale read-only, caldav can still be changed and used normally | +| Flag | Usage | +| ------------- | ---------------------------------------------------------------------- | +| `--read-only` | make radicale read-only, caldav can still be changed and used normally | #### Rebuild -``` +```shell #/bin/sh docker stop radicale docker rm radicale docker pull tomsquest/docker-radicale:2.1.11.4 docker run --name radicale \ - --restart unless-stopped \ - --read-only \ + --restart unless-stopped \ + --read-only \ -p 5232:5232 \ -v radicale_data:/data \ - -v radicale_config:/config \ + -v radicale_config:/config \ -d tomsquest/docker-radicale:2.1.11.4 ``` #### Configuration -After installation there are a few crucial steps to take to secure your calendars with a login. -It is important to change the config file which can be found in the docker volume with name `radicale_config` to match the `config`-file. -``` +After installation there are a few crucial steps to take to secure your +calendars with a login. +It is important to change the config file which can be found in the docker +volume with name `radicale_config` to match the `config`-file. + +```txt # -*- mode: conf -*- # vim:ft=cfg @@ -187,13 +193,18 @@ type = internal #Access-Control-Allow-Origin = * ``` -Following this you need to make sure there is a password file in the docker volume `radicale_data` called `users`. +Following this you need to make sure there is a password file in the docker +volume `radicale_data` called `users`. The password will be encrypted using `bcrypt`. Steps to create a file with a user and password: -- You will have to install the package which includes `htpasswd`; for debian based distributions this is `apt install apache2-utils` + +- You will have to install the package which includes `htpasswd`; for debian + based distributions this is `apt install apache2-utils` - `cd /var/lib/docker/volumes/radicale\_data/\_data` - go to the volume - `touch ./users` - create a file called users -- `htpasswd -B ./users username` - add user with name and password to the file (change `username` to your desired username) +- `htpasswd -B ./users username` - add user with name and password to the file + (change `username` to your desired username) Now you can go to the exposed port and login with your chosen username and password. -If you only added one user you shouldn't be able to login with any other data than your username and password. +If you only added one user you shouldn't be able to login with any other data +than your username and password. diff --git a/wiki/samba.md b/wiki/samba.md index 721664b..cc5a520 100644 --- a/wiki/samba.md +++ b/wiki/samba.md @@ -7,55 +7,58 @@ The official container and documentation was made by [dperson](https://hub.docker.com/r/samba). #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ------------------------------ | -| samba\_nas | /nas | storage for samba data | -| samba\_lib | /var/lib/samba | storage for samba lib | -| samba\_cache | /var/cache/samba | storage for samba cache | -| samba\_run | /run/samba | run entries for samba | -| samba\_etc | /etc | etc directory of samba server | -| samba\_log | /var/log/samba | storage for samba logs | +| Volume-Name | Container mount | Description | +| ------------- | ------------------ | ----------------------------- | +| `samba_nas` | `/nas` | storage for samba data | +| `samba_lib` | `/var/lib/samba` | storage for samba lib | +| `samba_cache` | `/var/cache/samba` | storage for samba cache | +| `samba_run` | `/run/samba` | run entries for samba | +| `samba_etc` | `/etc` | etc directory of samba server | +| `samba_log` | `/var/log/samba` | storage for samba logs | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | -------------- | -| 139 | 139 | TCP | Samba internal | -| 445 | 445 | TCP | Samba internal | +| `139` | `139` | TCP | Samba internal | +| `445` | `445` | TCP | Samba internal | #### Additional + There are some special variables to set. -| Flag | Usage | -| --------------------------------------------------------------------- | ---------------- | -| -u \(;ID;group;GID) | define user | -| -w \ | define workgroup | -| -s \(;browse;readonly;guest;users;admins;writelist;comment) | define shares | +| Flag | Usage | +| ------------------------------------------------------------------------- | ---------------- | +| `-u \(;ID;group;GID)` | define user | +| `-w \` | define workgroup | +| `-s \(;browse;readonly;guest;users;admins;writelist;comment)` | define shares | #### Rebuild -``` +```shell #!/bin/sh docker stop samba docker rm samba docker pull dperson/samba docker run --name samba \ - --restart unless-stopped \ - -p 139:139 \ - -p 445:445 \ - -v samba_nas:/nas \ - -v samba_lib:/var/lib/samba \ - -v samba_cache:/var/cache/samba \ - -v samba_run:/run/samba \ - -v samba_etc:/etc \ - -v samba_log:/var/log/samba \ - -d dperson/samba -p \ - -u "user1;pass1" \ - -u "user2;pass2" \ - -s "public;/nas/public" \ - -s "user1private;/nas/user1;no;no;no;user1;user1" \ - -s "user2private;/nas/user2;no;no;no;user2;user2" + --restart unless-stopped \ + -p 139:139 \ + -p 445:445 \ + -v samba_nas:/nas \ + -v samba_lib:/var/lib/samba \ + -v samba_cache:/var/cache/samba \ + -v samba_run:/run/samba \ + -v samba_etc:/etc \ + -v samba_log:/var/log/samba \ + -d dperson/samba -p \ + -u "user1;pass1" \ + -u "user2;pass2" \ + -s "public;/nas/public" \ + -s "user1private;/nas/user1;no;no;no;user1;user1" \ + -s "user2private;/nas/user2;no;no;no;user2;user2" ``` diff --git a/wiki/syncthing.md b/wiki/syncthing.md index 09b55e1..21d7d09 100644 --- a/wiki/syncthing.md +++ b/wiki/syncthing.md @@ -7,47 +7,50 @@ The official container and documentation was made by [linuxserver](https://hub.docker.com/r/linuxserver/syncthing). #### Environment-variables + Set the following variables with the -e tag. -| Name | Usage | Default | -| --------- | ---------------- | ------- | -| PUID | UserID | | -| PGID | GroupID | | -| TZ | Timezone | | -| UMASK\_SET | setting usermask | | +| Name | Usage | Default | +| ----------- | ---------------- | ------- | +| `PUID` | UserID | | +| `PGID` | GroupID | | +| `TZ` | Timezone | | +| `UMASK_SET` | setting usermask | | #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ----------------------------------------------- | -| syncthing\_config | /config | storage for config and possible downloaded data | +| Volume-Name | Container mount | Description | +| ------------------ | --------------- | ----------------------------------------------- | +| `syncthing_config` | `/config` | storage for config and possible downloaded data | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ------------------ | -| 8384 | 8384 | TCP | WebUI | -| 22000 | 22000 | TCP | Syncthing internal | -| 21027 | 21027 | UDP | Syncthing internal | +| `8384` | `8384` | TCP | WebUI | +| `22000` | `22000` | TCP | Syncthing internal | +| `21027` | `21027` | UDP | Syncthing internal | #### Rebuild -``` +```shell #!/bin/sh docker stop syncthing docker rm syncthing docker pull linuxserver/syncthing docker run --name syncthing \ - --restart unless-stopped \ - -p 8384:8384 \ - -p 22000:22000 \ - -p 21027:21027/udp \ - -v syncthing_config:/config \ - -e PUID=0 \ - -e PGID=0 \ - -e TZ=Europe/Berlin \ - -e UMASK_SET=022 \ - -d linuxserver/syncthing + --restart unless-stopped \ + -p 8384:8384 \ + -p 22000:22000 \ + -p 21027:21027/udp \ + -v syncthing_config:/config \ + -e PUID=0 \ + -e PGID=0 \ + -e TZ=Europe/Berlin \ + -e UMASK_SET=022 \ + -d linuxserver/syncthing ``` diff --git a/wiki/teamspeak.md b/wiki/teamspeak.md index 887ce33..f695869 100644 --- a/wiki/teamspeak.md +++ b/wiki/teamspeak.md @@ -7,41 +7,44 @@ The official container and documentation was made by [teamspeak](https://hub.docker.com/_/teamspeak). #### Environment-variables + Set the following variables with the -e tag. -| Name | Usage | Default | -| ----------------- | ---------------------------- | ------- | -| TS3SERVER\_LICENSE | accept the license agreement | | +| Name | Usage | Default | +| ------------------- | ---------------------------- | ------- | +| `TS3SERVER_LICENSE` | accept the license agreement | | #### Volumes + Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | --------------------------- | -| teamspeak3 | /var/ts3server | storage for ts3-server data | +| Volume-Name | Container mount | Description | +| ------------ | ---------------- | --------------------------- | +| `teamspeak3` | `/var/ts3server` | storage for ts3-server data | #### Ports + Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 9987 | 9987 | UDP | ts3-intern | -| 10011 | 10011 | TCP | ts3-intern | -| 30033 | 30033 | TCP | ts3-intern | +| `9987` | `9987` | UDP | ts3-intern | +| `10011` | `10011` | TCP | ts3-intern | +| `30033` | `30033` | TCP | ts3-intern | #### Rebuild -``` +```shell #!/bin/sh docker stop teamspeak3 docker rm teamspeak3 docker pull teamspeak:latest docker run --name teamspeak3 \ - --restart unless-stopped \ - -p 9987:9987/udp \ - -p 10011:10011 \ - -p 30033:30033 \ - -v teamspeak3:/var/ts3server \ - -e TS3SERVER_LICENSE=accept \ - -d teamspeak:latest + --restart unless-stopped \ + -p 9987:9987/udp \ + -p 10011:10011 \ + -p 30033:30033 \ + -v teamspeak3:/var/ts3server \ + -e TS3SERVER_LICENSE=accept \ + -d teamspeak:latest ``` diff --git a/wiki/todo-list.md b/wiki/todo-list.md index 4deca1b..2dcbb6e 100644 --- a/wiki/todo-list.md +++ b/wiki/todo-list.md @@ -10,9 +10,9 @@ The official container and documentation was made by [prologic](https://hub.dock Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | -------------------- | ----------------------- | -| todo | /go/src/todo/todo.db | Database for todo list | +| Volume-Name | Container mount | Description | +| ----------- | ---------------------- | ---------------------- | +| `todo` | `/go/src/todo/todo.db` | Database for todo list | #### Ports @@ -20,18 +20,18 @@ Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------- | -| 8000 | 8000 | TCP | WebUI | +| `8000` | `8000` | TCP | WebUI | #### Rebuild -``` +```shell #!/bin/sh docker stop todo docker rm todo docker pull prologic/todo docker run --name todo \ - -p 8000:8000 \ - --restart unless-stopped \ - -v todo:/go/src/todo/todo.db \ - -d prologic/todo + -p 8000:8000 \ + --restart unless-stopped \ + -v todo:/go/src/todo/todo.db \ + -d prologic/todo ``` diff --git a/wiki/yourls.md b/wiki/yourls.md index 8f3c24a..1af3014 100644 --- a/wiki/yourls.md +++ b/wiki/yourls.md @@ -9,22 +9,23 @@ The official container and documentation was made by [yourls](https://hub.docker #### YOURLS ##### Environment-variables + Set the following variables with the -e tag. -| Name | Usage | Default | -| ---- | ---------------------------------------------------- | ------- | -| YOURLS\_DB\_PASS | database password | | -| YOURLS\_SITE | domain/site name of yourls | | -| YOURLS\_USER | username for yourls admin | | -| YOURLS\_PASS | password for yourls admin | | +| Name | Usage | Default | +| ---------------- | -------------------------- | ------- | +| `YOURLS_DB_PASS` | database password | | +| `YOURLS_SITE` | domain/site name of yourls | | +| `YOURLS_USER` | username for yourls admin | | +| `YOURLS_PASS` | password for yourls admin | | ##### Volumes Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ----------------------- | -| yourls | /var/www/html | yourls specific html | +| Volume-Name | Container mount | Description | +| ----------- | --------------- | -------------------- | +| `yourls` | `/var/www/html` | yourls specific html | ##### Ports @@ -32,28 +33,29 @@ Set the following ports with the -p tag. | Container Port | Recommended outside port | Protocol | Description | | -------------- | ------------------------ | -------- | ----------------- | -| 80 | 80 | TCP | dns protocol port | +| `80` | `80` | TCP | dns protocol port | #### MySQL ##### Environment-variables + Set the following variables with the -e tag. -| Name | Usage | Default | -| ---- | ---------------------------------------------------- | ------- | -| MYSQL\_ROOT\_PASSWORD | database password | | +| Name | Usage | Default | +| --------------------- | ----------------- | ------- | +| `MYSQL_ROOT_PASSWORD` | database password | | ##### Volumes Set the following volumes with the -v tag. -| Volume-Name | Container mount | Description | -| ---------------- | --------------- | ----------------------- | -| mysql | /var/cache/bind | database for yourls | +| Volume-Name | Container mount | Description | +| ----------- | ----------------- | ------------------- | +| `mysql` | `/var/cache/bind` | database for yourls | #### Rebuild -``` +```shell #!/bin/sh docker-compose down docker-compose up -d @@ -61,34 +63,34 @@ docker-compose up -d #### Docker-Compose.yml -``` -version: '3.1' +```yml +version: "3.1" services: - yourls: - image: yourls - restart: unless-stopped - ports: - - 7006:80 - environment: - YOURLS_DB_PASS: mysql_pw - YOURLS_SITE: https://domain.tld - YOURLS_USER: admin_username - YOURLS_PASS: admin_password - YOURLS_PRIVATE: 'true' - volumes: - - yourls:/var/www/html - - mysql: - image: mysql:5.7 - restart: unless-stopped - environment: - MYSQL_ROOT_PASSWORD: mysql_pw - volumes: - - mysql:/var/lib/mysql + yourls: + image: yourls + restart: unless-stopped + ports: + - 7006:80 + environment: + YOURLS_DB_PASS: mysql_pw + YOURLS_SITE: https://domain.tld + YOURLS_USER: admin_username + YOURLS_PASS: admin_password + YOURLS_PRIVATE: "true" + volumes: + - yourls:/var/www/html + + mysql: + image: mysql:5.7 + restart: unless-stopped + environment: + MYSQL_ROOT_PASSWORD: mysql_pw + volumes: + - mysql:/var/lib/mysql volumes: - yourls: - driver: local - mysql: - driver: local + yourls: + driver: local + mysql: + driver: local ```