From 5152091fb27690d4cfaf61ccb44081e81b0abf4e Mon Sep 17 00:00:00 2001 From: Dziad Borowy <392513+tborychowski@users.noreply.github.com> Date: Wed, 15 Jan 2025 10:22:06 +0000 Subject: [PATCH] cleanup "version" as its deprecated; add windows in a docker` (#26) --- .editorconfig | 11 ++++ README.md | 11 ++-- apps/backup/elkar-backup.md | 2 - apps/bookmarks/shaarli.md | 1 - apps/bookmarks/shiori.md | 1 - apps/bookmarks/wallabag.md | 1 - apps/cloud/pydio.md | 1 - apps/cloud/screenly.md | 1 - apps/downloads/simple-torrent.md | 1 - apps/home-automation/home-assistant.md | 1 - apps/media/invidious.md | 1 - apps/media/tautulli.md | 1 - apps/media/youtubedl-web.md | 1 - apps/notes/joplin.md | 1 - apps/other/bitwarden.md | 1 - apps/other/code.md | 8 +-- apps/other/firefox-sync.md | 1 - apps/other/windows.md | 87 ++++++++++++++++++++++++++ apps/photos/lychee.md | 1 - apps/photos/pigallery.md | 1 - apps/photos/pixelfed.md | 1 - apps/project-mgmt/jira.md | 1 - apps/project-mgmt/kanboard.md | 1 - apps/project-mgmt/open-project.md | 1 - apps/project-mgmt/planka.md | 1 - apps/project-mgmt/vikunja.md | 1 - apps/project-mgmt/wekan.md | 1 - apps/reverse-proxy-sso/traefik.md | 1 - apps/rss/miniflux-filter.md | 1 - apps/rss/miniflux.md | 1 - apps/rss/rssbridge.md | 1 - apps/social/etesync.md | 1 - apps/social/monica.md | 1 - apps/wiki/xwiki.md | 1 - 34 files changed, 108 insertions(+), 40 deletions(-) create mode 100644 .editorconfig create mode 100644 apps/other/windows.md diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..b3c2cc6 --- /dev/null +++ b/.editorconfig @@ -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 diff --git a/README.md b/README.md index 204ace4..04bf57c 100644 --- a/README.md +++ b/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 - [bitwarden_rs](apps/other/bitwarden.md) +- [Brave sync server](apps/other/brave-sync.md) - [change-detection](apps/other/change-detection.md) - [Cockpit](apps/other/cockpit.md) - [Code server](apps/other/code.md) - [Crowdsec](apps/other/crowdsec.md) -- [Firefox](apps/other/firefox.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) - [Ntfy](apps/other/ntfy.md) -- [Penpot](apps/other/penpot.md) -- [VPN client](apps/other/vpn.md) - [OpenSpeedTest](apps/other/openspeedtest.md) -- [Traccar location tracker](apps/other/traccar.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 - [Comparison table](apps/photos/comparison.md) diff --git a/apps/backup/elkar-backup.md b/apps/backup/elkar-backup.md index d3b23de..110b9dc 100644 --- a/apps/backup/elkar-backup.md +++ b/apps/backup/elkar-backup.md @@ -16,8 +16,6 @@ Open source backup solution based on RSync/RSnapshot. ## docker-compose.yml ```yml -version: '3' - services: elkarbackup: image: elkarbackup/elkarbackup diff --git a/apps/bookmarks/shaarli.md b/apps/bookmarks/shaarli.md index e27cf74..d8476fb 100644 --- a/apps/bookmarks/shaarli.md +++ b/apps/bookmarks/shaarli.md @@ -24,7 +24,6 @@ sudo chown 100:101 cache/ data/ ## docker-compose.yml ```yml --- -version: '3' services: shaarli: image: shaarli/shaarli:master diff --git a/apps/bookmarks/shiori.md b/apps/bookmarks/shiori.md index e133e34..0c8f662 100644 --- a/apps/bookmarks/shiori.md +++ b/apps/bookmarks/shiori.md @@ -8,7 +8,6 @@ ## docker-compose.yml ```yml --- -version: '3' services: shiori: image: radhifadlillah/shiori diff --git a/apps/bookmarks/wallabag.md b/apps/bookmarks/wallabag.md index 35e96af..5123f70 100644 --- a/apps/bookmarks/wallabag.md +++ b/apps/bookmarks/wallabag.md @@ -14,7 +14,6 @@ ## docker-compose.yml ```yml -version: '3' services: wallabag: image: wallabag/wallabag diff --git a/apps/cloud/pydio.md b/apps/cloud/pydio.md index ede7702..6dde37f 100644 --- a/apps/cloud/pydio.md +++ b/apps/cloud/pydio.md @@ -13,7 +13,6 @@ ## docker-compose.yml ```yml --- -version: '3' services: cells: image: pydio/cells:latest diff --git a/apps/cloud/screenly.md b/apps/cloud/screenly.md index f98b615..9771df5 100644 --- a/apps/cloud/screenly.md +++ b/apps/cloud/screenly.md @@ -33,7 +33,6 @@ FILESYSTEM_DRIVER=public ## docker-compose.yml ```yml --- -version: '3' services: screenly: image: hadogenes/screeenly diff --git a/apps/downloads/simple-torrent.md b/apps/downloads/simple-torrent.md index abce12f..629318f 100644 --- a/apps/downloads/simple-torrent.md +++ b/apps/downloads/simple-torrent.md @@ -14,7 +14,6 @@ ## docker-compose.yml ```yml --- -version: '3' services: cloud-torrent: image: boypt/cloud-torrent diff --git a/apps/home-automation/home-assistant.md b/apps/home-automation/home-assistant.md index bfdcc52..9c73ce4 100644 --- a/apps/home-automation/home-assistant.md +++ b/apps/home-automation/home-assistant.md @@ -36,7 +36,6 @@ ## docker-compose.yml ```yml -version: '3' services: homeassistant: container_name: home-assistant diff --git a/apps/media/invidious.md b/apps/media/invidious.md index 64f9140..e7e11a3 100644 --- a/apps/media/invidious.md +++ b/apps/media/invidious.md @@ -23,7 +23,6 @@ rm docker-compose.yml # removing this as we're gonna simplify it and let it use ## docker-compose.yml ```yml -version: '3' services: postgres: image: postgres:10 diff --git a/apps/media/tautulli.md b/apps/media/tautulli.md index c4e4f79..8c57f3c 100644 --- a/apps/media/tautulli.md +++ b/apps/media/tautulli.md @@ -13,7 +13,6 @@ Monitor for Plex Media Server. ## docker-compose.yml ```yml --- -version: '3' services: tautuli: image: tautulli/tautulli diff --git a/apps/media/youtubedl-web.md b/apps/media/youtubedl-web.md index 3965b66..885350a 100644 --- a/apps/media/youtubedl-web.md +++ b/apps/media/youtubedl-web.md @@ -8,7 +8,6 @@ ## docker-compose.yml ```yml --- -version: '3' services: youtubedl-web: image: franhp/youtubedl-web:latest diff --git a/apps/notes/joplin.md b/apps/notes/joplin.md index d85c9c3..bc32453 100644 --- a/apps/notes/joplin.md +++ b/apps/notes/joplin.md @@ -10,7 +10,6 @@ This is the Joplin sync server. ## docker-compose.yml ```yml --- -version: '3' services: db: image: postgres:13.1 diff --git a/apps/other/bitwarden.md b/apps/other/bitwarden.md index 6ae33ab..4956f13 100644 --- a/apps/other/bitwarden.md +++ b/apps/other/bitwarden.md @@ -13,7 +13,6 @@ bitwarden_rs is an unofficial Bitwarden compatible server. ## docker-compose.yml ```yml --- -version: '3' services: bitwarden: image: bitwardenrs/server:latest diff --git a/apps/other/code.md b/apps/other/code.md index 9dd6a82..99f2629 100644 --- a/apps/other/code.md +++ b/apps/other/code.md @@ -25,13 +25,13 @@ services: - TZ=Europe/Dublin # - 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 - ITEM_URL=https://marketplace.visualstudio.com/items volumes: - ./config:/config - # folder that will show up in the Code file tree - - /var/www/project1:/config/workspace/project1 + # folder that will show up in the Code file tree + - /var/www/project1:/config/workspace/project1 ``` diff --git a/apps/other/firefox-sync.md b/apps/other/firefox-sync.md index d65e860..557be11 100644 --- a/apps/other/firefox-sync.md +++ b/apps/other/firefox-sync.md @@ -13,7 +13,6 @@ ## docker-compose.yml ```yml --- -version: '3' services: firefox-sync: image: mozilla/syncserver:latest diff --git a/apps/other/windows.md b/apps/other/windows.md new file mode 100644 index 0000000..b821b23 --- /dev/null +++ b/apps/other/windows.md @@ -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 +``` diff --git a/apps/photos/lychee.md b/apps/photos/lychee.md index 08e7735..d68c3ee 100644 --- a/apps/photos/lychee.md +++ b/apps/photos/lychee.md @@ -99,7 +99,6 @@ http { ## docker-compose.yml ```yml --- -version: '3' services: lychee_db: container_name: lychee_db diff --git a/apps/photos/pigallery.md b/apps/photos/pigallery.md index 2c09258..5d72075 100644 --- a/apps/photos/pigallery.md +++ b/apps/photos/pigallery.md @@ -14,7 +14,6 @@ ## docker-compose.yml ```yml --- -version: '3' services: pigallery2: image: bpatrik/pigallery2:latest diff --git a/apps/photos/pixelfed.md b/apps/photos/pixelfed.md index 0fe0c5f..1e54eef 100644 --- a/apps/photos/pixelfed.md +++ b/apps/photos/pixelfed.md @@ -15,7 +15,6 @@ First create `.env` file like this one: https://github.com/pixelfed/pixelfed/blo ## docker-compose.yml ```yml --- -version: '3' services: app: image: pixelfed diff --git a/apps/project-mgmt/jira.md b/apps/project-mgmt/jira.md index fcb096c..ed360b6 100644 --- a/apps/project-mgmt/jira.md +++ b/apps/project-mgmt/jira.md @@ -12,7 +12,6 @@ ## docker-compose.yml ```yml --- -version: '3' services: jira: image: atlassian/jira-software diff --git a/apps/project-mgmt/kanboard.md b/apps/project-mgmt/kanboard.md index 60afa25..ea39b02 100644 --- a/apps/project-mgmt/kanboard.md +++ b/apps/project-mgmt/kanboard.md @@ -16,7 +16,6 @@ ## docker-compose.yml ```yml -version: '2' services: kanboard: image: kanboard/kanboard:latest diff --git a/apps/project-mgmt/open-project.md b/apps/project-mgmt/open-project.md index 176d341..4152d62 100644 --- a/apps/project-mgmt/open-project.md +++ b/apps/project-mgmt/open-project.md @@ -13,7 +13,6 @@ Full-featured & complicated. ## docker-compose.yml ```yml --- -version: '3' services: openproject: image: openproject/community diff --git a/apps/project-mgmt/planka.md b/apps/project-mgmt/planka.md index 8b7134f..6e44744 100644 --- a/apps/project-mgmt/planka.md +++ b/apps/project-mgmt/planka.md @@ -7,7 +7,6 @@ ## docker-compose.yml ```yml --- -version: '3' services: planka: image: meltyshev/planka:latest diff --git a/apps/project-mgmt/vikunja.md b/apps/project-mgmt/vikunja.md index d04e305..921d9f4 100644 --- a/apps/project-mgmt/vikunja.md +++ b/apps/project-mgmt/vikunja.md @@ -13,7 +13,6 @@ ## docker-compose.yml ```yml -version: '3' services: api: image: vikunja/api diff --git a/apps/project-mgmt/wekan.md b/apps/project-mgmt/wekan.md index d899127..05fc1e8 100644 --- a/apps/project-mgmt/wekan.md +++ b/apps/project-mgmt/wekan.md @@ -11,7 +11,6 @@ Probably the best of the ones tested. A good balance between features & complexi ## docker-compose.yml ```yml --- -version: '2' services: wekandb: image: mongo:latest diff --git a/apps/reverse-proxy-sso/traefik.md b/apps/reverse-proxy-sso/traefik.md index 6d8edcc..129099e 100644 --- a/apps/reverse-proxy-sso/traefik.md +++ b/apps/reverse-proxy-sso/traefik.md @@ -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 ```yml -version: '3' services: traefik: image: traefik:v2.3 diff --git a/apps/rss/miniflux-filter.md b/apps/rss/miniflux-filter.md index daee194..5cfa7a3 100644 --- a/apps/rss/miniflux-filter.md +++ b/apps/rss/miniflux-filter.md @@ -19,7 +19,6 @@ The new version adds a UI for managing filters. The UI "borrows" the css & javas ## docker-compose.yml ```yml --- -version: '3' services: miniflux-filter: image: tborychowski/miniflux-filter:latest diff --git a/apps/rss/miniflux.md b/apps/rss/miniflux.md index 363f086..1d22aca 100644 --- a/apps/rss/miniflux.md +++ b/apps/rss/miniflux.md @@ -11,7 +11,6 @@ The best RSS reader that I've tested. Simple, extremely fast and minimalistic. ## docker-compose.yml ```yml -version: '3' services: miniflux: image: miniflux/miniflux:nightly diff --git a/apps/rss/rssbridge.md b/apps/rss/rssbridge.md index bec0d44..d1b0e69 100644 --- a/apps/rss/rssbridge.md +++ b/apps/rss/rssbridge.md @@ -10,7 +10,6 @@ RSS-Bridge is a PHP project capable of generating RSS and Atom feeds for website ```yml --- -version: '2' services: rss-bridge: image: rssbridge/rss-bridge:latest diff --git a/apps/social/etesync.md b/apps/social/etesync.md index ff6b49a..32c56e1 100644 --- a/apps/social/etesync.md +++ b/apps/social/etesync.md @@ -12,7 +12,6 @@ Not terrible, but not great. ## docker-compose.yml ```yml --- -version: '3' services: etesync: image: dsaier/etesync diff --git a/apps/social/monica.md b/apps/social/monica.md index 0256789..3c70b12 100644 --- a/apps/social/monica.md +++ b/apps/social/monica.md @@ -75,7 +75,6 @@ DARKSKY_API_KEY= ## docker-compose.yml ```yml --- -version: '3' services: monicahq: image: monica diff --git a/apps/wiki/xwiki.md b/apps/wiki/xwiki.md index 1df1ccd..9faca96 100644 --- a/apps/wiki/xwiki.md +++ b/apps/wiki/xwiki.md @@ -20,7 +20,6 @@ wget https://raw.githubusercontent.com/xwiki-contrib/docker-xwiki/master/12/mysq ## docker-compose.yml ```yml --- -version: '2' services: db: image: mysql:5.7