Idea for optimizing performance
Since docker fmd2 is pretty heavy i thought why not try to optimize it :
Instead of ubuntu, use a Alpine-based image like debianbookworm
Disable wine debugging: export WINEDEBUG=-all
But that means replacing apt with apk and we dont get access to specific wine versions.
But its also nearly 50% faster then the current ubuntu based fmd2 docker !!
FROM ghcr.io/linuxserver/baseimage-kasmvnc:alpine320
ARG FMD2_VERSION="2.0.32.0"
LABEL \
maintainer="[email protected]"
ENV \
WINEDLLOVERRIDES="mscoree,mshtml=" \
WINEDEBUG="-all" \ # Disable Wine debugging
HOME=/config
# Install required packages
RUN \
apk update && \
apk add --no-cache \
wine \
wget \
p7zip \
curl \
git \
python3 \
py3-pyxdg \
inotify-tools \
rsync && \
# Download and extract FMD2
curl -s https://api.github.com/repos/dazedcat19/FMD2/releases/tags/${FMD2_VERSION} | \
grep "browser_download_url.*download.*fmd.*x86_64.*.7z" | \
cut -d : -f 2,3 | tr -d '"' | wget -qi - -O FMD2.7z && \
7z x FMD2.7z -o/app/FMD2 && \
rm FMD2.7z && \
mkdir -p /downloads && \
mkdir -p /app/FMD2/userdata && \
mkdir -p /app/FMD2/downloads
# Copy my settings preset
COPY settings.json /root/
VOLUME /config
EXPOSE 3000
Just noticed that your readme even says makes use of linuxserver alpine baseimage, but ur using ubuntunoble
I will create a fork with the alpine image, fix https://github.com/Banh-Canh/docker-FMD2/issues/18 and if everything works i create a pull request and you merge it if you want :)
It used to be alpine but I had issues with wine version not being available or not working in full. Things might have changed so if you get a working version, it's cool :)
I would say, create your own project if you want, I don't feel like maintaining this and you'll have it easier to make docker image available instead of waiting for me to push (no github action are made available in my repo).
Yeah i could continue maintaining this, i will create a fork and once its done you could maybe put a info in your readme about that i continue development for it :) (Only if you want to ^^)
@Banh-Canh can you explain how the root folder is used ? In your Dockerfile it seems to never get copied into the Docker Image
or maybe @Jerrk since Banh is rather busy and sometimes takes a while ^^
It's copied in here: https://github.com/Banh-Canh/docker-FMD2/blob/1258f7e5c9790aaaa79ac61e23ae8017a6366a21/Dockerfile#L26
it basically copy the content to the root of the filesystem of your image (/)
Oh yeah i think i might be blind, how did i miss that it moves settings.json and root to the / folder, i apologise for the ping.
@Banh-Canh i made my fork, based on baseimage-kasmvnc:alpine320 and it works flawlessly. I have also set up a GitHub action to create a new docker image (thanks for the reminder ^^)
You said you don't feel like maintaining this, i have no problem being the new maintainer with my alpine fork 🙂 In that way i think if you could link people to my fork in the readme & have a notice about that you stop maintaining it would be a good idea. (You could also mark your repo as an archive, so that people see that it stopped being maintained, but that might be overkill.)
The fork is https://github.com/ElryGH/docker-FMD2
I will do just that after work, thanks 👌
@ElryGH
Not to spam up Bahn's repo here, but it looks like you aren't allowing issues on your repo. Could you enable them?
You can find them in the settings for the repo