mirror of
https://github.com/tborychowski/self-hosted-cookbook.git
synced 2025-01-22 19:38:30 +00:00
cleanup "version" as its deprecated; add windows in a docker` (#26)
This commit is contained in:
parent
c3a8a8e5f5
commit
5152091fb2
11
.editorconfig
Normal file
11
.editorconfig
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
charset = utf-8
|
||||||
|
end_of_line = lf
|
||||||
|
indent_size = 2
|
||||||
|
indent_style = space
|
||||||
|
insert_final_newline = true
|
||||||
|
max_line_length = 120
|
||||||
|
tab_width = 4
|
||||||
|
trim_trailing_whitespace = true
|
11
README.md
11
README.md
@ -298,20 +298,21 @@ The aims is to provide a ready-to-run recipes that you can just copy, paste and
|
|||||||
|
|
||||||
# Other services
|
# Other services
|
||||||
- [bitwarden_rs](apps/other/bitwarden.md)
|
- [bitwarden_rs](apps/other/bitwarden.md)
|
||||||
|
- [Brave sync server](apps/other/brave-sync.md)
|
||||||
- [change-detection](apps/other/change-detection.md)
|
- [change-detection](apps/other/change-detection.md)
|
||||||
- [Cockpit](apps/other/cockpit.md)
|
- [Cockpit](apps/other/cockpit.md)
|
||||||
- [Code server](apps/other/code.md)
|
- [Code server](apps/other/code.md)
|
||||||
- [Crowdsec](apps/other/crowdsec.md)
|
- [Crowdsec](apps/other/crowdsec.md)
|
||||||
- [Firefox](apps/other/firefox.md)
|
|
||||||
- [Firefox sync server](apps/other/firefox-sync.md)
|
- [Firefox sync server](apps/other/firefox-sync.md)
|
||||||
- [Brave sync server](apps/other/brave-sync.md)
|
- [Firefox](apps/other/firefox.md)
|
||||||
- [LanguageTool server](apps/other/language-tool.md)
|
- [LanguageTool server](apps/other/language-tool.md)
|
||||||
- [Ntfy](apps/other/ntfy.md)
|
- [Ntfy](apps/other/ntfy.md)
|
||||||
- [Penpot](apps/other/penpot.md)
|
|
||||||
- [VPN client](apps/other/vpn.md)
|
|
||||||
- [OpenSpeedTest](apps/other/openspeedtest.md)
|
- [OpenSpeedTest](apps/other/openspeedtest.md)
|
||||||
- [Traccar location tracker](apps/other/traccar.md)
|
|
||||||
- [Owntracks location tracker](apps/other/owntracks.md)
|
- [Owntracks location tracker](apps/other/owntracks.md)
|
||||||
|
- [Penpot](apps/other/penpot.md)
|
||||||
|
- [Traccar location tracker](apps/other/traccar.md)
|
||||||
|
- [VPN client](apps/other/vpn.md)
|
||||||
|
- [Windows](apps/other/windows.md)
|
||||||
|
|
||||||
# Photos
|
# Photos
|
||||||
- [Comparison table](apps/photos/comparison.md)
|
- [Comparison table](apps/photos/comparison.md)
|
||||||
|
@ -16,8 +16,6 @@ Open source backup solution based on RSync/RSnapshot.
|
|||||||
|
|
||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
version: '3'
|
|
||||||
|
|
||||||
services:
|
services:
|
||||||
elkarbackup:
|
elkarbackup:
|
||||||
image: elkarbackup/elkarbackup
|
image: elkarbackup/elkarbackup
|
||||||
|
@ -24,7 +24,6 @@ sudo chown 100:101 cache/ data/
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
shaarli:
|
shaarli:
|
||||||
image: shaarli/shaarli:master
|
image: shaarli/shaarli:master
|
||||||
|
@ -8,7 +8,6 @@
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
shiori:
|
shiori:
|
||||||
image: radhifadlillah/shiori
|
image: radhifadlillah/shiori
|
||||||
|
@ -14,7 +14,6 @@
|
|||||||
|
|
||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
wallabag:
|
wallabag:
|
||||||
image: wallabag/wallabag
|
image: wallabag/wallabag
|
||||||
|
@ -13,7 +13,6 @@
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
cells:
|
cells:
|
||||||
image: pydio/cells:latest
|
image: pydio/cells:latest
|
||||||
|
@ -33,7 +33,6 @@ FILESYSTEM_DRIVER=public
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
screenly:
|
screenly:
|
||||||
image: hadogenes/screeenly
|
image: hadogenes/screeenly
|
||||||
|
@ -14,7 +14,6 @@
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
cloud-torrent:
|
cloud-torrent:
|
||||||
image: boypt/cloud-torrent
|
image: boypt/cloud-torrent
|
||||||
|
@ -36,7 +36,6 @@
|
|||||||
|
|
||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
homeassistant:
|
homeassistant:
|
||||||
container_name: home-assistant
|
container_name: home-assistant
|
||||||
|
@ -23,7 +23,6 @@ rm docker-compose.yml # removing this as we're gonna simplify it and let it use
|
|||||||
|
|
||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
postgres:
|
postgres:
|
||||||
image: postgres:10
|
image: postgres:10
|
||||||
|
@ -13,7 +13,6 @@ Monitor for Plex Media Server.
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
tautuli:
|
tautuli:
|
||||||
image: tautulli/tautulli
|
image: tautulli/tautulli
|
||||||
|
@ -8,7 +8,6 @@
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
youtubedl-web:
|
youtubedl-web:
|
||||||
image: franhp/youtubedl-web:latest
|
image: franhp/youtubedl-web:latest
|
||||||
|
@ -10,7 +10,6 @@ This is the Joplin sync server.
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
db:
|
db:
|
||||||
image: postgres:13.1
|
image: postgres:13.1
|
||||||
|
@ -13,7 +13,6 @@ bitwarden_rs is an unofficial Bitwarden compatible server.
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
bitwarden:
|
bitwarden:
|
||||||
image: bitwardenrs/server:latest
|
image: bitwardenrs/server:latest
|
||||||
|
@ -25,13 +25,13 @@ services:
|
|||||||
- TZ=Europe/Dublin
|
- TZ=Europe/Dublin
|
||||||
# - PASSWORD=password #optional
|
# - PASSWORD=password #optional
|
||||||
# - SUDO_PASSWORD=password #optional
|
# - SUDO_PASSWORD=password #optional
|
||||||
- PROXY_DOMAIN=code.example.com #optional
|
- PROXY_DOMAIN=code.example.com #optional
|
||||||
|
|
||||||
# To get extensions from M$ store - add these:
|
# To get extensions from M$ store - add these:
|
||||||
- SERVICE_URL=https://marketplace.visualstudio.com/_apis/public/gallery
|
- SERVICE_URL=https://marketplace.visualstudio.com/_apis/public/gallery
|
||||||
- ITEM_URL=https://marketplace.visualstudio.com/items
|
- ITEM_URL=https://marketplace.visualstudio.com/items
|
||||||
volumes:
|
volumes:
|
||||||
- ./config:/config
|
- ./config:/config
|
||||||
# folder that will show up in the Code file tree
|
# folder that will show up in the Code file tree
|
||||||
- /var/www/project1:/config/workspace/project1
|
- /var/www/project1:/config/workspace/project1
|
||||||
```
|
```
|
||||||
|
@ -13,7 +13,6 @@
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
firefox-sync:
|
firefox-sync:
|
||||||
image: mozilla/syncserver:latest
|
image: mozilla/syncserver:latest
|
||||||
|
87
apps/other/windows.md
Normal file
87
apps/other/windows.md
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
# Windows 7 in a Docker container
|
||||||
|
|
||||||
|
- [Github repo](https://github.com/dockur/windows)
|
||||||
|
|
||||||
|
|
||||||
|
## docker-compose.yml
|
||||||
|
```yml
|
||||||
|
---
|
||||||
|
services:
|
||||||
|
windows:
|
||||||
|
image: dockurr/windows
|
||||||
|
container_name: windows
|
||||||
|
restart: unless-stopped
|
||||||
|
devices:
|
||||||
|
- /dev/kvm
|
||||||
|
- /dev/net/tun
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
ports:
|
||||||
|
- 8006:8006
|
||||||
|
- 3389:3389/tcp
|
||||||
|
- 3389:3389/udp
|
||||||
|
stop_grace_period: 2m
|
||||||
|
environment:
|
||||||
|
CPU_CORES: "4"
|
||||||
|
RAM_SIZE: "8G"
|
||||||
|
DISK_SIZE: "128G"
|
||||||
|
USERNAME: "admin"
|
||||||
|
volumes:
|
||||||
|
- ./windows:/storage
|
||||||
|
- ./win7.iso:/custom.iso
|
||||||
|
```
|
||||||
|
|
||||||
|
## Tips & Tricks
|
||||||
|
|
||||||
|
### Custom ISO image
|
||||||
|
Just add this bit (and remove the `VERSION` environment variable) to the `docker-compose.yml` file:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
volumes:
|
||||||
|
- /home/user/example.iso:/custom.iso
|
||||||
|
```
|
||||||
|
|
||||||
|
### CPU & RAM
|
||||||
|
By default, the container will be allowed to use a maximum of 2 CPU cores and 4 GB of RAM.
|
||||||
|
If you want to adjust this, you can specify the desired amount using the following environment variables:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
environment:
|
||||||
|
RAM_SIZE: "8G"
|
||||||
|
CPU_CORES: "4"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Username and password
|
||||||
|
By default, a user called `Docker` is created during the installation, with an **empty password**.
|
||||||
|
If you want to use different credentials, you can change them in your compose file:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
environment:
|
||||||
|
USERNAME: "bill"
|
||||||
|
PASSWORD: "gates"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Storage location
|
||||||
|
To change the storage location, include the following bind mount in your compose file:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
volumes:
|
||||||
|
- /var/win:/storage
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### Storage size
|
||||||
|
To expand the default size of **64 GB**, add the `DISK_SIZE` setting to your compose file and set it to your preferred capacity:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
environment:
|
||||||
|
DISK_SIZE: "256G"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Sharing files with the host
|
||||||
|
Open **File Explorer** and click on the **Network** section, you will see a computer called **host.lan**. Double-click it and it will show a folder called **Data**, which can be bound to any folder on your host via the compose file:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
volumes:
|
||||||
|
- /home/user/example:/data
|
||||||
|
```
|
@ -99,7 +99,6 @@ http {
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
lychee_db:
|
lychee_db:
|
||||||
container_name: lychee_db
|
container_name: lychee_db
|
||||||
|
@ -14,7 +14,6 @@
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
pigallery2:
|
pigallery2:
|
||||||
image: bpatrik/pigallery2:latest
|
image: bpatrik/pigallery2:latest
|
||||||
|
@ -15,7 +15,6 @@ First create `.env` file like this one: https://github.com/pixelfed/pixelfed/blo
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: pixelfed
|
image: pixelfed
|
||||||
|
@ -12,7 +12,6 @@
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
jira:
|
jira:
|
||||||
image: atlassian/jira-software
|
image: atlassian/jira-software
|
||||||
|
@ -16,7 +16,6 @@
|
|||||||
|
|
||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
version: '2'
|
|
||||||
services:
|
services:
|
||||||
kanboard:
|
kanboard:
|
||||||
image: kanboard/kanboard:latest
|
image: kanboard/kanboard:latest
|
||||||
|
@ -13,7 +13,6 @@ Full-featured & complicated.
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
openproject:
|
openproject:
|
||||||
image: openproject/community
|
image: openproject/community
|
||||||
|
@ -7,7 +7,6 @@
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
planka:
|
planka:
|
||||||
image: meltyshev/planka:latest
|
image: meltyshev/planka:latest
|
||||||
|
@ -13,7 +13,6 @@
|
|||||||
|
|
||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
api:
|
api:
|
||||||
image: vikunja/api
|
image: vikunja/api
|
||||||
|
@ -11,7 +11,6 @@ Probably the best of the ones tested. A good balance between features & complexi
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '2'
|
|
||||||
services:
|
services:
|
||||||
wekandb:
|
wekandb:
|
||||||
image: mongo:latest
|
image: mongo:latest
|
||||||
|
@ -27,7 +27,6 @@ It's also good to keep a note with a table of service-port mapping (to quickly s
|
|||||||
|
|
||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
traefik:
|
traefik:
|
||||||
image: traefik:v2.3
|
image: traefik:v2.3
|
||||||
|
@ -19,7 +19,6 @@ The new version adds a UI for managing filters. The UI "borrows" the css & javas
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
miniflux-filter:
|
miniflux-filter:
|
||||||
image: tborychowski/miniflux-filter:latest
|
image: tborychowski/miniflux-filter:latest
|
||||||
|
@ -11,7 +11,6 @@ The best RSS reader that I've tested. Simple, extremely fast and minimalistic.
|
|||||||
|
|
||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
miniflux:
|
miniflux:
|
||||||
image: miniflux/miniflux:nightly
|
image: miniflux/miniflux:nightly
|
||||||
|
@ -10,7 +10,6 @@ RSS-Bridge is a PHP project capable of generating RSS and Atom feeds for website
|
|||||||
|
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '2'
|
|
||||||
services:
|
services:
|
||||||
rss-bridge:
|
rss-bridge:
|
||||||
image: rssbridge/rss-bridge:latest
|
image: rssbridge/rss-bridge:latest
|
||||||
|
@ -12,7 +12,6 @@ Not terrible, but not great.
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
etesync:
|
etesync:
|
||||||
image: dsaier/etesync
|
image: dsaier/etesync
|
||||||
|
@ -75,7 +75,6 @@ DARKSKY_API_KEY=
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '3'
|
|
||||||
services:
|
services:
|
||||||
monicahq:
|
monicahq:
|
||||||
image: monica
|
image: monica
|
||||||
|
@ -20,7 +20,6 @@ wget https://raw.githubusercontent.com/xwiki-contrib/docker-xwiki/master/12/mysq
|
|||||||
## docker-compose.yml
|
## docker-compose.yml
|
||||||
```yml
|
```yml
|
||||||
---
|
---
|
||||||
version: '2'
|
|
||||||
services:
|
services:
|
||||||
db:
|
db:
|
||||||
image: mysql:5.7
|
image: mysql:5.7
|
||||||
|
Loading…
Reference in New Issue
Block a user