mirror of
https://github.com/dockur/windows.git
synced 2024-11-28 09:35:42 +00:00
feat: Add shared network folder (#157)
This commit is contained in:
parent
42a5295306
commit
4e9ac3ef37
@ -9,7 +9,10 @@ RUN apt-get update \
|
||||
&& apt-get --no-install-recommends -y install \
|
||||
curl \
|
||||
7zip \
|
||||
wsdd \
|
||||
samba \
|
||||
wimtools \
|
||||
dos2unix \
|
||||
cabextract \
|
||||
genisoimage \
|
||||
libxml2-utils \
|
||||
|
@ -12,6 +12,7 @@ cd /run
|
||||
. disk.sh # Initialize disks
|
||||
. display.sh # Initialize graphics
|
||||
. network.sh # Initialize network
|
||||
. samba.sh # Configure samba
|
||||
. boot.sh # Configure boot
|
||||
. proc.sh # Initialize processor
|
||||
. power.sh # Configure shutdown
|
||||
|
@ -835,11 +835,16 @@ prepareXP() {
|
||||
echo "ProductKey=$key"
|
||||
echo ""
|
||||
echo "[Identification]"
|
||||
echo "JoinWorkgroup"
|
||||
echo "JoinWorkgroup = WORKGROUP"
|
||||
echo ""
|
||||
echo "[Networking]"
|
||||
echo "InstallDefaultComponents=Yes"
|
||||
echo ""
|
||||
echo "[URL]"
|
||||
echo "Home_Page = http://www.google.com"
|
||||
echo "Search_Page = http://www.google.com/ie_rsearch.html"
|
||||
echo "AutoConfig = 0"
|
||||
echo ""
|
||||
echo "[RegionalSettings]"
|
||||
echo "Language=00000409"
|
||||
echo ""
|
||||
|
@ -29,8 +29,8 @@ ready() {
|
||||
|
||||
if [ -f "$STORAGE/windows.old" ]; then
|
||||
local last
|
||||
local bios="Booting from Hard Disk"
|
||||
last=$(grep "^B.*" "$QEMU_PTY" | tail -1)
|
||||
local bios="Booting from Hard"
|
||||
last=$(grep "^Booting.*" "$QEMU_PTY" | tail -1)
|
||||
if [[ "${last,,}" == "${bios,,}"* ]]; then
|
||||
return 0
|
||||
fi
|
||||
@ -74,6 +74,9 @@ finish() {
|
||||
pid="/var/run/tpm.pid"
|
||||
[ -f "$pid" ] && pKill "$(<"$pid")"
|
||||
|
||||
fKill "wsdd"
|
||||
fKill "smbd"
|
||||
|
||||
closeNetwork
|
||||
|
||||
sleep 0.5
|
||||
|
63
src/samba.sh
Normal file
63
src/samba.sh
Normal file
@ -0,0 +1,63 @@
|
||||
#!/usr/bin/env bash
|
||||
set -Eeuo pipefail
|
||||
|
||||
[[ "$DHCP" == [Yy1]* ]] && return 0
|
||||
|
||||
SHARE="$STORAGE/shared"
|
||||
|
||||
mkdir -p "$SHARE"
|
||||
chmod -R 777 "$SHARE"
|
||||
|
||||
SAMBA="/etc/samba/smb.conf"
|
||||
|
||||
{ echo "[global]"
|
||||
echo " server string = Dockur"
|
||||
echo " netbios name = dockur"
|
||||
echo " workgroup = WORKGROUP"
|
||||
echo " interfaces = dockerbridge"
|
||||
echo " bind interfaces only = yes"
|
||||
echo " security = user"
|
||||
echo " guest account = nobody"
|
||||
echo " map to guest = Bad User"
|
||||
echo " server min protocol = SMB2"
|
||||
echo ""
|
||||
echo " # disable printing services"
|
||||
echo " load printers = no"
|
||||
echo " printing = bsd"
|
||||
echo " printcap name = /dev/null"
|
||||
echo " disable spoolss = yes"
|
||||
echo ""
|
||||
echo "[Data]"
|
||||
echo " path = $SHARE"
|
||||
echo " comment = Shared"
|
||||
echo " writable = yes"
|
||||
echo " guest ok = yes"
|
||||
echo " guest only = yes"
|
||||
echo " force user = root"
|
||||
echo " force group = root"
|
||||
} > "$SAMBA"
|
||||
|
||||
{ echo "--------------------------------------------------------"
|
||||
echo " $APP for Docker v$(</run/version)..."
|
||||
echo " For support visit $SUPPORT"
|
||||
echo "--------------------------------------------------------"
|
||||
echo ""
|
||||
echo "Using this folder you can share files with the host machine."
|
||||
echo ""
|
||||
echo "To change the storage location, include the following bind mount in your compose file:"
|
||||
echo ""
|
||||
echo " volumes:"
|
||||
echo " - \"/home/user/example:/storage/shared\""
|
||||
echo ""
|
||||
echo "Or in your run command:"
|
||||
echo ""
|
||||
echo " -v \"/home/user/example:/storage/shared\""
|
||||
echo ""
|
||||
echo "Replace the example path /home/user/example with the desired storage folder."
|
||||
echo ""
|
||||
} | unix2dos > "$SHARE/readme.txt"
|
||||
|
||||
smbd -D
|
||||
wsdd -i dockerbridge -p -n "host.local" &
|
||||
|
||||
return 0
|
Loading…
Reference in New Issue
Block a user