From 51867cdb604599c3814205124051cae9ba878014 Mon Sep 17 00:00:00 2001 From: --global <--global> Date: Wed, 14 Dec 2022 13:32:40 -0600 Subject: [PATCH] Add docker-data/ and related stuff --- README.md | 10 +++++++-- docker-composer.conf | 4 ++-- docker-data/pihole/docker-compose.yml | 24 +++++++++++++++++++++ docker-data/transmission/docker-compose.yml | 19 ++++++++++++++++ docker-data/wg-easy/docker-compose.yml | 14 ++++++++++++ 5 files changed, 67 insertions(+), 4 deletions(-) create mode 100644 docker-data/pihole/docker-compose.yml create mode 100644 docker-data/transmission/docker-compose.yml create mode 100644 docker-data/wg-easy/docker-compose.yml diff --git a/README.md b/README.md index c70769e..31f6225 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ This is a simple program to manage docker containers. It works similarly to Umbr ## How to use -- **Note:** All scrips must be run in the same directory as the `.config` file. +- **Note:** All scrips must be run in the same directory as the `docker-composer.conf` file. - If you want to re-compose your containers on boot, you can run `composer.py` on boot - If you want to re-compose your containers on demand, you can run `re_compose.py` manually - If you just want to do basic management, like stopping, starting, removing docker containers, etc, then use `basic-management.py`. It's essentially an interactive wrapper for the basics of docker. @@ -14,13 +14,19 @@ This is a simple program to manage docker containers. It works similarly to Umbr I'll get to this later once this program is actually usable. +You can use `docker-data/` to test the program, or can put your own data there. `docker-composer.conf` is already set up to use that directory! + ## Usage -.config parameters: +`docker-composer.conf` parameters: - `compose-path`: The path to the folder containing the folders for each docker container - the folder for each container includes a `docker-compose.yml` file. + - **If you use relative paths**, use the folder you're in as `/`. For example, using the folder `docker-data` would be either `/docker-data` or `/path/to/this/repo/docker-data`. You can also have a "/" on the end of those paths, if you'd like; it's not required. - `exclude-containers`: A list of containers to exclude from being managed by the program. This will stop the program from doing **anything** to those containers. +Notes: +- The folders *must* have the same name as their respective docker containers + ## Dev Notes - Maybe later expand this to an interactive docker manager. diff --git a/docker-composer.conf b/docker-composer.conf index d4f7768..31a5d96 100644 --- a/docker-composer.conf +++ b/docker-composer.conf @@ -1,2 +1,2 @@ -compose-path=/path/to/docker-container-folders/that-contain-docker-compose.yml -exclude-containers=hello,there,random-person \ No newline at end of file +compose-path=/docker-data/ +exclude-containers=pihole \ No newline at end of file diff --git a/docker-data/pihole/docker-compose.yml b/docker-data/pihole/docker-compose.yml new file mode 100644 index 0000000..a1fefeb --- /dev/null +++ b/docker-data/pihole/docker-compose.yml @@ -0,0 +1,24 @@ +version: "3" + +# More info at https://github.com/pi-hole/docker-pi-hole/ and https://docs.pi-hole.net/ +services: + pihole: + container_name: pihole + image: pihole/pihole:latest + # For DHCP it is recommended to remove these ports and instead add: network_mode: "host" + ports: + - "53:53/tcp" + - "53:53/udp" + - "67:67/udp" # Only required if you are using Pi-hole as your DHCP server + - "80:80/tcp" + environment: + TZ: 'America/Chicago' + # WEBPASSWORD: 'set a secure password here or it will be random' + # Volumes store your data between container upgrades + volumes: + - './etc-pihole:/etc/pihole' + - './etc-dnsmasq.d:/etc/dnsmasq.d' + # https://github.com/pi-hole/docker-pi-hole#note-on-capabilities + cap_add: + - NET_ADMIN # Required if you are using Pi-hole as your DHCP server, else not needed + restart: unless-stopped \ No newline at end of file diff --git a/docker-data/transmission/docker-compose.yml b/docker-data/transmission/docker-compose.yml new file mode 100644 index 0000000..67bfc05 --- /dev/null +++ b/docker-data/transmission/docker-compose.yml @@ -0,0 +1,19 @@ +version: "2.1" +services: + transmission: + image: lscr.io/linuxserver/transmission:latest + container_name: transmission + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/London + - TRANSMISSION_WEB_HOME=/combustion-release/ #optional + volumes: + - ./data:/config + - ./downloads:/downloads + - ./watch:/watch + ports: + - 9091:9091 + - 51413:51413 + - 51413:51413/udp + restart: unless-stopped \ No newline at end of file diff --git a/docker-data/wg-easy/docker-compose.yml b/docker-data/wg-easy/docker-compose.yml new file mode 100644 index 0000000..767e490 --- /dev/null +++ b/docker-data/wg-easy/docker-compose.yml @@ -0,0 +1,14 @@ +version: '3.3' +services: + wg-easy: + container_name: wg-easy + environment: + - WG_HOST=localhost + - PASSWORD=password + volumes: + - '~/.wg-easy:/etc/wireguard' + ports: + - '51820:51820/udp' + - '51821:51821/tcp' + restart: unless-stopped + image: weejewel/wg-easy \ No newline at end of file