Skip to content
Snippets Groups Projects
Unverified Commit 9f9f64f2 authored by Dominique Marcadet's avatar Dominique Marcadet
Browse files

initial running version using ubuntu-kde

parents
No related branches found
No related tags found
No related merge requests found
Pipeline #24757 failed
FROM lscr.io/linuxserver/webtop:ubuntu-kde
RUN \
echo "**** install runtime dependencies ****" && \
apt-get update && \
apt-get install -y \
nginx \
apache2-utils
RUN \
sed -i 's/worker_processes auto;/worker_processes 1;/' /etc/nginx/nginx.conf
RUN \
echo "**** clean up ****" && \
apt-get clean && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
## add local files
COPY /root /
## launch
ENTRYPOINT ["/bin/bash", "/usr/local/lib/wrapper_script.sh"]
## nginx reverse proxy
EXPOSE 3080
REPO = gitlab-research.centralesupelec.fr:4567/my-docker-images/docker-webtop
TAG = latest
all:
docker buildx create --use --node new-builder
docker buildx build --push --platform "linux/amd64","linux/arm64" --tag "${REPO}:${TAG}" .
# docker-webtop
## Why
This image is a base image for a full linux running either on a local docker or on MyDocker.
It is based on [WebTop image from LinuxServer.io](https://github.com/linuxserver/docker-webtop)
which is maintained and quite often updated.
## Changes
- For deployment on MyDocker, an nginx WebSocket reverse proxy with http basic authentification
has been added. Trying to use the PASSWORD setting of [guacamole client From Linuxserver](https://github.com/linuxserver/gclient)
was not succesful.
## Details
- The exposed ports are 3000 (VNC with a Web Browser), 3080 (nginx reverse proxy) and 3089
(RDP)
- The user folder is `/config`
- the user and sudo password is `abc`
- if docker is installed on your computer, you can run (amd64 or arm64 architecture) this
image, assuming you are in a specific folder that will be shared with the container at
`/config`, with:
`docker run -p 3000:3000 -v "$(pwd):/config"
gitlab-research.centralesupelec.fr:4567/my-docker-images/docker-webtop`
server {
listen 3080 default_server;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 120s;
}
}
server {
listen 3080 default_server;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 120s;
auth_basic "Username is abc";
auth_basic_user_file /etc/nginx/htpasswd;
}
}
7
\ No newline at end of file
#!/command/execlineb -P
nginx -g "daemon off;"
longrun
\ No newline at end of file
#!/bin/bash
rm /etc/nginx/sites-enabled/default
if [ -z $2 ]; then
ln -s /etc/nginx/sites-available/default.local /etc/nginx/sites-enabled/default
else
ln -s /etc/nginx/sites-available/default.mydocker /etc/nginx/sites-enabled/default
# <password> is ${2}
htpasswd -bc /etc/nginx/htpasswd abc "${2}"
fi
exec /init
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment