mirror of https://github.com/Box-boi/vubuntu.git
Update v1.4.3
This commit is contained in:
parent
c60647d12c
commit
ea2d7e17f3
215
Dockerfile
215
Dockerfile
|
|
@ -1,145 +1,120 @@
|
|||
FROM ubuntu:20.04
|
||||
|
||||
LABEL AboutImage "Ubuntu20.04_Fluxbox_NoVNC"
|
||||
|
||||
LABEL Maintainer "Apoorv Vyavahare <apoorvvyavahare@pm.me>"
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
#VNC Server Password
|
||||
ENV VNC_PASS="samplepass" \
|
||||
ENV VNC_PASS="samplepass" \
|
||||
#VNC Server Title(w/o spaces)
|
||||
VNC_TITLE="Vubuntu_Desktop" \
|
||||
VNC_TITLE="Vubuntu_Desktop" \
|
||||
#VNC Resolution(720p is preferable)
|
||||
VNC_RESOLUTION="1280x720" \
|
||||
VNC_RESOLUTION="1280x720" \
|
||||
#VNC Shared Mode (0=off, 1=on)
|
||||
VNC_SHARED=0 \
|
||||
VNC_SHARED=0 \
|
||||
#Local Display Server Port
|
||||
DISPLAY=:0 \
|
||||
DISPLAY=:0 \
|
||||
#NoVNC Port
|
||||
NOVNC_PORT=$PORT \
|
||||
#Ngrok Token (Strictly use private token if using the service)
|
||||
NGROK_AUTH_TOKEN="1xM4IHjFpX4CwPYr82zZJH9ZjYQ_5kmfqfXit97FkTYSGUrZJ" \
|
||||
NOVNC_PORT=$PORT \
|
||||
#Ngrok Token
|
||||
NGROK_AUTH_TOKEN="placeholder" \
|
||||
#Brave Shared Memory Usage (Set it to 0 to disable the use of /dev/shm for Brave Browser, helpful for Heroku)
|
||||
BRAVE_USE_SHM=1 \
|
||||
#Locale
|
||||
LANG=en_US.UTF-8 \
|
||||
LANGUAGE=en_US.UTF-8 \
|
||||
LC_ALL=C.UTF-8 \
|
||||
TZ="Asia/Kolkata"
|
||||
LANG=en_US.UTF-8 \
|
||||
LANGUAGE=en_US.UTF-8 \
|
||||
LC_ALL=C.UTF-8 \
|
||||
TZ="Asia/Kolkata"
|
||||
|
||||
COPY . /app/.vubuntu
|
||||
|
||||
SHELL ["/bin/bash", "-c"]
|
||||
|
||||
RUN rm -f /etc/apt/sources.list && \
|
||||
#All Official Focal Repos
|
||||
bash -c 'echo -e "deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse\ndeb-src http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse\ndeb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse\ndeb-src http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse\ndeb http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse\ndeb-src http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse\ndeb http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse\ndeb-src http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse\ndeb http://archive.canonical.com/ubuntu focal partner\ndeb-src http://archive.canonical.com/ubuntu focal partner" >/etc/apt/sources.list' && \
|
||||
apt-get update && \
|
||||
apt-get install -y \
|
||||
#Packages Installation
|
||||
tzdata \
|
||||
software-properties-common \
|
||||
apt-transport-https \
|
||||
wget \
|
||||
htop \
|
||||
git \
|
||||
curl \
|
||||
vim \
|
||||
zip \
|
||||
sudo \
|
||||
net-tools \
|
||||
iputils-ping \
|
||||
build-essential \
|
||||
python3 \
|
||||
python3-pip \
|
||||
python-is-python3 \
|
||||
#perl \
|
||||
#ruby \
|
||||
golang \
|
||||
#lua5.3 \
|
||||
#scala \
|
||||
#mono-complete \
|
||||
#r-base \
|
||||
default-jre \
|
||||
default-jdk \
|
||||
#clojure \
|
||||
#php \
|
||||
nodejs \
|
||||
npm \
|
||||
firefox \
|
||||
gnome-terminal \
|
||||
gnome-calculator \
|
||||
gnome-system-monitor \
|
||||
gedit \
|
||||
vim-gtk3 \
|
||||
mousepad \
|
||||
libreoffice \
|
||||
pcmanfm \
|
||||
terminator \
|
||||
supervisor \
|
||||
x11vnc \
|
||||
xvfb \
|
||||
gnupg \
|
||||
dirmngr \
|
||||
gdebi-core \
|
||||
nginx \
|
||||
openvpn \
|
||||
ffmpeg \
|
||||
pluma && \
|
||||
#Fluxbox
|
||||
apt-get install -y /app/.vubuntu/assets/packages/fluxbox.deb && \
|
||||
#noVNC
|
||||
apt-get install -y /app/.vubuntu/assets/packages/novnc.deb && \
|
||||
cp /usr/share/novnc/vnc.html /usr/share/novnc/index.html && \
|
||||
openssl req -new -newkey rsa:4096 -days 36500 -nodes -x509 -subj "/C=IN/ST=Maharastra/L=Private/O=Dis/CN=www.google.com" -keyout /etc/ssl/novnc.key -out /etc/ssl/novnc.cert && \
|
||||
RUN apt-get update && \
|
||||
apt-get --no-install-recommends install -y \
|
||||
#Basic Packages
|
||||
tzdata software-properties-common apt-transport-https wget zip unzip htop git curl vim nano zip sudo net-tools x11-utils eterm iputils-ping build-essential xvfb x11vnc supervisor \
|
||||
#GUI Utilities
|
||||
gnome-terminal gnome-calculator gnome-system-monitor pcmanfm terminator firefox \
|
||||
#Python
|
||||
python3 python3-pip python-is-python3 \
|
||||
#Java
|
||||
default-jre default-jdk \
|
||||
#Text Editors
|
||||
vim-gtk3 mousepad pluma \
|
||||
#NodeJS
|
||||
nodejs npm \
|
||||
#Go
|
||||
golang \
|
||||
#Other Languages
|
||||
#perl \
|
||||
#ruby \
|
||||
#lua5.3 \
|
||||
#scala \
|
||||
#mono-complete \
|
||||
#r-base \
|
||||
#clojure \
|
||||
#php \
|
||||
#Extras
|
||||
libreoffice \
|
||||
gnupg \
|
||||
dirmngr \
|
||||
gdebi-core \
|
||||
nginx \
|
||||
ffmpeg && \
|
||||
#Fluxbox & noVNC
|
||||
apt-get install --no-install-recommends -y /app/.vubuntu/assets/packages/fluxbox.deb /app/.vubuntu/assets/packages/novnc.deb && \
|
||||
cp /usr/share/novnc/vnc.html /usr/share/novnc/index.html && \
|
||||
openssl req -new -newkey rsa:4096 -days 36500 -nodes -x509 -subj "/C=IN/ST=Maharastra/L=Private/O=Dis/CN=www.google.com" -keyout /etc/ssl/novnc.key -out /etc/ssl/novnc.cert && \
|
||||
#Websockify
|
||||
npm i websockify && \
|
||||
#MATE Desktop
|
||||
#apt-get install -y \
|
||||
#ubuntu-mate-core \
|
||||
#ubuntu-mate-desktop && \
|
||||
#XFCE Desktop
|
||||
#apt-get install -y \
|
||||
#xubuntu-desktop && \
|
||||
npm i websockify && \
|
||||
#MATE Desktop (remove "/app/.vubuntu/assets/packages/fluxbox.deb" from line 66 before uncommenting)
|
||||
#apt-get install -y \
|
||||
#ubuntu-mate-core \
|
||||
#ubuntu-mate-desktop && \
|
||||
#XFCE Desktop (remove "/app/.vubuntu/assets/packages/fluxbox.deb" from line 66 before uncommenting)
|
||||
#apt-get install -y \
|
||||
#xubuntu-desktop && \
|
||||
#TimeZone
|
||||
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && \
|
||||
echo $TZ > /etc/timezone && \
|
||||
#VS Code
|
||||
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg && \
|
||||
install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/ && \
|
||||
echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list && \
|
||||
rm -f packages.microsoft.gpg && \
|
||||
apt-get update && \
|
||||
apt-get install code -y && \
|
||||
#Brave
|
||||
curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg && \
|
||||
echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main"|tee /etc/apt/sources.list.d/brave-browser-release.list && \
|
||||
apt-get update && \
|
||||
apt-get install brave-browser -y && \
|
||||
#PeaZip
|
||||
wget https://github.com/peazip/PeaZip/releases/download/8.1.0/peazip_8.1.0.LINUX.x86_64.GTK2.deb -P /tmp && \
|
||||
apt-get install -y /tmp/peazip_8.1.0.LINUX.x86_64.GTK2.deb && \
|
||||
#Sublime
|
||||
curl -fsSL https://download.sublimetext.com/sublimehq-pub.gpg | apt-key add - && \
|
||||
add-apt-repository "deb https://download.sublimetext.com/ apt/stable/" && \
|
||||
apt-get install -y sublime-text && \
|
||||
#Telegram
|
||||
wget https://updates.tdesktop.com/tlinux/tsetup.2.9.2.tar.xz -P /tmp && \
|
||||
tar -xvf /tmp/tsetup.2.9.2.tar.xz -C /tmp && \
|
||||
mv /tmp/Telegram/Telegram /usr/bin/telegram && \
|
||||
#PowerShell
|
||||
wget -q https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -P /tmp && \
|
||||
apt-get install -y /tmp/packages-microsoft-prod.deb && \
|
||||
apt-get update && \
|
||||
apt-get install -y powershell && \
|
||||
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && \
|
||||
echo $TZ > /etc/timezone && \
|
||||
#VS Code - source
|
||||
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/packages.microsoft.gpg && \
|
||||
install -o root -g root -m 644 /tmp/packages.microsoft.gpg /etc/apt/trusted.gpg.d/ && \
|
||||
echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list && \
|
||||
#Brave - source
|
||||
curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg && \
|
||||
echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main"|tee /etc/apt/sources.list.d/brave-browser-release.list && \
|
||||
#PeaZip - source
|
||||
wget https://github.com/peazip/PeaZip/releases/download/8.2.0/peazip_8.2.0.LINUX.GTK2-1_amd64.deb -P /tmp && \
|
||||
#Sublime - source
|
||||
curl -fsSL https://download.sublimetext.com/sublimehq-pub.gpg | apt-key add - && \
|
||||
add-apt-repository "deb https://download.sublimetext.com/ apt/stable/" && \
|
||||
#Telegram - source
|
||||
wget https://updates.tdesktop.com/tlinux/tsetup.3.2.2.tar.xz -P /tmp && \
|
||||
tar -xvf /tmp/tsetup.3.2.2.tar.xz -C /tmp && \
|
||||
mv /tmp/Telegram/Telegram /usr/bin/telegram && \
|
||||
#PowerShell - source
|
||||
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -P /tmp && \
|
||||
#Installation
|
||||
apt-get update && \
|
||||
apt-get install --no-install-recommends code brave-browser /tmp/peazip_8.2.0.LINUX.GTK2-1_amd64.deb sublime-text /tmp/packages-microsoft-prod.deb -y && \
|
||||
apt-get update && \
|
||||
apt-get install --no-install-recommends -y powershell && \
|
||||
#Ngrok
|
||||
wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip -P /tmp && \
|
||||
unzip /tmp/ngrok-stable-linux-amd64.zip -d /usr/bin && \
|
||||
ngrok authtoken $NGROK_AUTH_TOKEN && \
|
||||
wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip -P /tmp && \
|
||||
unzip /tmp/ngrok-stable-linux-amd64.zip -d /usr/bin && \
|
||||
ngrok authtoken $NGROK_AUTH_TOKEN && \
|
||||
#Live Server setup for VSCode
|
||||
code --user-data-dir /root --no-sandbox --install-extension philnash.ngrok-for-vscode && \
|
||||
code --user-data-dir /root --no-sandbox --install-extension ritwickdey.LiveServer && \
|
||||
#Wipe Temp Files
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
apt-get clean && \
|
||||
rm -rf /tmp/*
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
apt-get clean && \
|
||||
apt-get autoremove -y && \
|
||||
rm -rf /tmp/*
|
||||
|
||||
ENTRYPOINT ["supervisord", "-l", "/app/.vubuntu/supervisord.log", "-c"]
|
||||
ENTRYPOINT ["supervisord", "-l", "/app/.vubuntu/assets/logs/supervisord.log", "-c"]
|
||||
|
||||
CMD ["/app/.vubuntu/assets/configs/supervisordconf"]
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
FROM vital987/vubuntu:latest
|
||||
FROM vital987/vubuntu:heroku
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
#VNC Server Password
|
||||
VNC_PASS="samplepass" \
|
||||
#VNC Server Title(w/o spaces)
|
||||
|
|
@ -10,7 +10,9 @@ ENV DEBIAN_FRONTEND=noninteractive \
|
|||
#NoVNC Port
|
||||
NOVNC_PORT=5900 \
|
||||
#PORT
|
||||
PORT=80 \
|
||||
PORT=80 \
|
||||
#Disable Shared Memory for Brave
|
||||
BRAVE_USE_SHM=0 \
|
||||
#Locale
|
||||
LANG=en_US.UTF-8 \
|
||||
LANGUAGE=en_US.UTF-8 \
|
||||
|
|
|
|||
45
README.md
45
README.md
|
|
@ -1,42 +1,52 @@
|
|||
# Ubuntu with NoVNC/[PureVNC](https://github.com/vital987/vubuntu/tree/purevnc) (Direct VNC)
|
||||
# VNC + Ubuntu = Vubuntu ¯\\_\(ツ\)\_\/¯
|
||||
|
||||
[](https://ubuntu.com) [](https://github.com/vital987) [](https://github.com/vital987) [](https://hub.docker.com/r/vital987/vubuntu) []()<br>[](https://heroku.com/deploy?template=https://github.com/vital987/vubuntu/) [](https://heroku.com/deploy?template=https://github.com/vital987/vubuntu/tree/minimal) [](https://heroku.com/deploy?template=https://github.com/vital987/vubuntu/tree/purevnc) [](https://heroku.com/deploy?template=https://github.com/vital987/vubuntu/tree/purevnc-minimal)
|
||||
|
||||
[](https://ubuntu.com) [](https://github.com/vital987) [](https://github.com/vital987) [](https://hub.docker.com/r/vital987/vubuntu) []()<br>[](https://heroku.com/deploy?template=https://github.com/vital987/vubuntu)<br>
|
||||
|
||||
## **Table of Contents :**
|
||||
* [**Available Options**](#available-options-)
|
||||
* [**Packages**](#packages-)
|
||||
* [**Screenshots**](#screenshots-)
|
||||
* [**Environment Variables**](#environment-variables-)
|
||||
* [**Installation**](#installation-)
|
||||
* [**Warnings**](#warnings-)
|
||||
|
||||
## **Available Options :**
|
||||
* **[Latest](https://github.com/vital987/vubuntu/):** Full version of vubuntu with utilities, additional installed languages (Java & Go) & optional packages.
|
||||
* **[Minimal](https://github.com/vital987/vubuntu/tree/minimal):** Minimal version with only required packages, see next section for more info.
|
||||
* **[PureVNC](https://github.com/vital987/vubuntu/tree/purevnc):** Full, direct VNC access without noVNC.
|
||||
* **[PureVNC-Minimal](https://github.com/vital987/vubuntu/tree/purevnc):** Minimal, direct VNC access without noVNC.
|
||||
|
||||
## **Packages :**
|
||||
* •: Available in minimal version
|
||||
* **Browsers :**
|
||||
* []() []()
|
||||
* []() []()
|
||||
* **Shells :**
|
||||
* []() []() []()
|
||||
* []() []() []()
|
||||
* **Coding :**
|
||||
* []()
|
||||
* []()
|
||||
* **Text Editors :**
|
||||
* []() []() []()
|
||||
* []() []() []()
|
||||
* **Office Suite :**
|
||||
* []()
|
||||
* **Social Apps :**
|
||||
* []()
|
||||
* []()
|
||||
* **Utilities :**
|
||||
* []() []() []() []() []()
|
||||
* **Languages Installed [\* = Optional, can enable from Dockerfile]:**
|
||||
* []() []() []() []() []() []() []() []() []() []() []()
|
||||
* []() []() []() []() []()
|
||||
* **Languages Installed:**
|
||||
* []() []() []() []() []()
|
||||
|
||||
## **Screenshots :**
|
||||
<div>
|
||||
<details open>
|
||||
<summary>Laptop/Desktop</summary>
|
||||
<img src="https://raw.githubusercontent.com/vital987/vubuntu/master/assets/screenshots/desktop_ss1.png" align="center" width=900 height=500><br><br>
|
||||
<img src="https://raw.githubusercontent.com/vital987/vubuntu/master/assets/screenshots/desktop_ss2.png" align="center" width=900 height=500><br><br>
|
||||
<img src="https://raw.githubusercontent.com/vital987/vubuntu/master/assets/screenshots/desktop_ss1.png" align="center" width=450 height=250>
|
||||
<img src="https://raw.githubusercontent.com/vital987/vubuntu/master/assets/screenshots/desktop_ss2.png" align="center" width=450 height=250><br><br>
|
||||
</details>
|
||||
<details>
|
||||
<summary>Smartphone/Tablet</summary>
|
||||
<img src="https://raw.githubusercontent.com/vital987/vubuntu/master/assets/screenshots/phone_ss1.png" align="center" width=900 height=500><br><br>
|
||||
<img src="https://raw.githubusercontent.com/vital987/vubuntu/master/assets/screenshots/phone_ss2.png" align="center" width=900 height=500><br><br>
|
||||
<img src="https://raw.githubusercontent.com/vital987/vubuntu/master/assets/screenshots/phone_ss1.png" align="center" width=450 height=250>
|
||||
<img src="https://raw.githubusercontent.com/vital987/vubuntu/master/assets/screenshots/phone_ss2.png" align="center" width=450 height=250><br><br>
|
||||
</details>
|
||||
</div>
|
||||
|
||||
|
|
@ -50,8 +60,10 @@
|
|||
| DISPLAY | Display Server Port |
|
||||
| PORT | NoVNC HTTP Port |
|
||||
| NGROK_AUTH_TOKEN | Ngrok Token |
|
||||
| NGROK_REGION | Ngrok Server Region (Only PureVNC) |
|
||||
| NO_SLEEP | Prevent Heroku app from sleeping, disabled by default |
|
||||
| APP_NAME | Name of Heroku app |
|
||||
| BRAVE_USE_SHM | Usage of /dev/shm for Brave |
|
||||
|
||||
## **Installation :**
|
||||
* Heroku Users :
|
||||
|
|
@ -69,10 +81,11 @@
|
|||
-e PORT=9870 \
|
||||
-d -p 8080:9870 \
|
||||
vital987/vubuntu:latest
|
||||
```
|
||||
* noVNC Web-UI will be accessible on port **8080**
|
||||
|
||||
## **Warnings :**
|
||||
* [ ! ] **VNC_TITLE & VNC_PASS values should be without spaces.**
|
||||
* [ ! ] **The whole project runs as a root user in a docker container.**
|
||||
* [ ! ] **The whole project runs as a root user and non-sandboxed chromium in a docker container.**
|
||||
* [ ! ] **Using VNC/Remote Desktops are strictly prohibited/banned on many free platforms.**
|
||||
* [ ! ] **Deploy/Use at your own risk & responsibility!**
|
||||
|
||||
|
|
|
|||
2
app.json
2
app.json
|
|
@ -2,7 +2,7 @@
|
|||
"name": "Vubuntu",
|
||||
"description": "Fully fledged Ubuntu NoVNC, refer readme for more info.",
|
||||
"repository": "https://github.com/vital987/vubuntu.git",
|
||||
"logo": "https://imgur.com/1qCGUwK.png",
|
||||
"logo": "https://raw.githubusercontent.com/vital987/vubuntu/master/assets/icons/64x64.png",
|
||||
"keywords": ["docker","ubuntu", "vscode", "novnc", "firefox", "brave", "fluxbox", "linux", "remote", "ssh", "vnc", "vubuntu"],
|
||||
"stack": "container",
|
||||
"env": {
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 133 KiB After Width: | Height: | Size: 174 KiB |
Loading…
Reference in New Issue