mirror of
https://github.com/dockur/windows.git
synced 2024-06-02 14:55:21 +02:00
Compare commits
14 Commits
7e24094201
...
472a940a23
Author | SHA1 | Date | |
---|---|---|---|
|
472a940a23 | ||
|
0389e4bb7c | ||
|
5cad811be5 | ||
|
fab966da90 | ||
|
2bef094216 | ||
|
625ace1f59 | ||
|
957ecdf3c5 | ||
|
280384ded3 | ||
|
0d67fa3034 | ||
|
660f45a96f | ||
|
cfc11651a2 | ||
|
ed6aeb192f | ||
|
140da52977 | ||
|
7eca98c1e9 |
26
readme.md
26
readme.md
|
@ -15,6 +15,7 @@ Windows in a Docker container.
|
|||
|
||||
## Features
|
||||
|
||||
- Multi-language
|
||||
- ISO downloader
|
||||
- KVM acceleration
|
||||
- Web-based viewer
|
||||
|
@ -107,6 +108,19 @@ kubectl apply -f kubernetes.yml
|
|||
|
||||
To install ARM64 versions of Windows use [dockur/windows-arm](https://github.com/dockur/windows-arm/).
|
||||
|
||||
* ### How do I select the Windows language?
|
||||
|
||||
By default, the English version of Windows will be downloaded. But you can add the `LANGUAGE` environment variable to your compose file, in order to specify an alternative language:
|
||||
|
||||
```yaml
|
||||
environment:
|
||||
LANGUAGE: "Chinese"
|
||||
```
|
||||
|
||||
You can choose between `Arabic`, `Bulgarian`, `Chinese`, `Croatian`, `Czech`, `Danish`, `Dutch`, `Estonian`, `Finnish`, `French`, `German`, `Greek`, `Hebrew`, `Hungarian`, `Italian`, `Japanese`, `Korean`, `Latvian`, `Lithuanian`, `Norwegian`, `Polish`, `Portuguese`, `Romanian`, `Russian`, `Serbian`, `Slovak`, `Slovenian`, `Spanish`, `Swedish`, `Turkish`, `Thai` and `Ukrainian`.
|
||||
|
||||
If you want to use a keyboard layout or region/locale that is not the default for the selected language, you can add the `KEYBOARD` and `REGION` variables with a culture code, like `en-US`.
|
||||
|
||||
* ### How do I change the storage location?
|
||||
|
||||
To change the storage location, include the following bind mount in your compose file:
|
||||
|
@ -242,11 +256,21 @@ kubectl apply -f kubernetes.yml
|
|||
CPU_CORES: "4"
|
||||
```
|
||||
|
||||
* ### How do I configure the username and password?
|
||||
|
||||
By default, a user called `Docker` is created during installation with an empty password. You can change these credentials in your compose file:
|
||||
|
||||
```yaml
|
||||
environment:
|
||||
USERNAME: "john"
|
||||
PASSWORD: "secret"
|
||||
```
|
||||
|
||||
* ### How do I connect using RDP?
|
||||
|
||||
The web-viewer is mainly meant to be used during installation, as its picture quality is low, and it has no audio or clipboard for example.
|
||||
|
||||
So for a better experience you can connect using any Microsoft Remote Desktop client to the IP of the container, using the username `docker` and by leaving the password empty.
|
||||
So for a better experience you can connect using any Microsoft Remote Desktop client to the IP of the container, using the username `Docker` and by leaving the password empty.
|
||||
|
||||
There is a good RDP client for [Android](https://play.google.com/store/apps/details?id=com.microsoft.rdc.androidx) available from the Play Store and one for [iOS](https://apps.apple.com/nl/app/microsoft-remote-desktop/id714464092?l=en-GB) in the Apple Store. For Linux you can use [FreeRDP](https://www.freerdp.com/) and on Windows just type `mstsc` in the search box.
|
||||
|
||||
|
|
1101
src/define.sh
1101
src/define.sh
File diff suppressed because it is too large
Load Diff
|
@ -76,10 +76,11 @@ startInstall() {
|
|||
else
|
||||
|
||||
local language
|
||||
language=$(getLanguage "$LANGUAGE" "")
|
||||
language=$(getLanguage "$LANGUAGE" "culture")
|
||||
language="${language%%-*}"
|
||||
|
||||
if [ -n "$language" ] && [[ "$language" != "en" ]]; then
|
||||
file="${VERSION/\//}.${language,,}.iso"
|
||||
if [ -n "$language" ] && [[ "${language,,}" != "en" ]]; then
|
||||
file="${VERSION/\//}_${language,,}.iso"
|
||||
fi
|
||||
|
||||
fi
|
||||
|
@ -449,6 +450,33 @@ detectVersion() {
|
|||
return 0
|
||||
}
|
||||
|
||||
detectLanguage() {
|
||||
|
||||
local xml="$1"
|
||||
local lang=""
|
||||
|
||||
if [[ "$xml" == *"LANGUAGE><DEFAULT>"* ]]; then
|
||||
lang="${xml#*LANGUAGE><DEFAULT>}"
|
||||
lang="${lang%%<*}"
|
||||
else
|
||||
if [[ "$xml" == *"FALLBACK><DEFAULT>"* ]]; then
|
||||
lang="${xml#*FALLBACK><DEFAULT>}"
|
||||
lang="${lang%%<*}"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$lang" ]; then
|
||||
warn "Language could not be detected from ISO!" && return 0
|
||||
fi
|
||||
|
||||
local culture
|
||||
culture=$(getLanguage "$lang" "culture")
|
||||
[ -n "$culture" ] && LANGUAGE="$lang" && return 0
|
||||
|
||||
warn "Invalid language detected: \"$lang\""
|
||||
return 0
|
||||
}
|
||||
|
||||
setXML() {
|
||||
|
||||
local file="/custom.xml"
|
||||
|
@ -466,7 +494,7 @@ detectImage() {
|
|||
|
||||
local dir="$1"
|
||||
local version="$2"
|
||||
local desc msg
|
||||
local desc msg language
|
||||
|
||||
XML=""
|
||||
|
||||
|
@ -529,6 +557,12 @@ detectImage() {
|
|||
fi
|
||||
|
||||
desc=$(printEdition "$DETECTED" "$DETECTED")
|
||||
detectLanguage "$info"
|
||||
|
||||
if [[ "${LANGUAGE,,}" != "en" ]] && [[ "${LANGUAGE,,}" != "en-"* ]]; then
|
||||
language=$(getLanguage "$LANGUAGE" "desc")
|
||||
desc="$desc ($language)"
|
||||
fi
|
||||
|
||||
info "Detected: $desc"
|
||||
setXML "" && return 0
|
||||
|
|
Loading…
Reference in New Issue
Block a user