File size: 2,598 Bytes
e67df5c | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | FROM ubuntu:22.04
# =========================================
# LIGHTNING VPS SYSTEM
# =========================================
ENV DEBIAN_FRONTEND=noninteractive
ENV HOSTNAME=LightningVPS
ENV TZ=Asia/Kolkata
# =========================================
# INSTALL PACKAGES
# =========================================
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
curl \
wget \
git \
sudo \
docker.io \
htop \
btop \
neovim \
lsof \
tmux \
screen \
nano \
unzip \
zip \
openssh-server \
cron \
net-tools \
iproute2 \
software-properties-common \
gnupg \
qemu-system-x86 \
qemu-kvm \
libvirt-daemon-system \
libvirt-clients \
bridge-utils \
virtinst \
cpu-checker \
cloud-image-utils \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# =========================================
# ENABLE KVM PERFORMANCE
# =========================================
RUN mkdir -p /var/run/sshd
# =========================================
# INSTALL CODE-SERVER
# =========================================
RUN curl -fsSL https://code-server.dev/install.sh | sh
# =========================================
# PERFORMANCE TWEAKS
# =========================================
RUN echo "fs.file-max=2097152" >> /etc/sysctl.conf && \
echo "net.core.somaxconn=65535" >> /etc/sysctl.conf && \
echo "net.ipv4.tcp_tw_reuse=1" >> /etc/sysctl.conf && \
echo "net.ipv4.ip_local_port_range=1024 65000" >> /etc/sysctl.conf && \
echo "vm.swappiness=10" >> /etc/sysctl.conf && \
echo "vm.dirty_ratio=15" >> /etc/sysctl.conf && \
echo "vm.dirty_background_ratio=5" >> /etc/sysctl.conf
# =========================================
# CREATE WORKSPACE
# =========================================
WORKDIR /workspace
# =========================================
# STARTUP SCRIPT
# =========================================
RUN echo '#!/bin/bash\n\
echo "Starting Lightning VPS..."\n\
service ssh start\n\
dockerd > /var/log/docker.log 2>&1 &\n\
code-server --bind-addr 0.0.0.0:7860 --auth none /workspace > /var/log/code-server.log 2>&1 &\n\
while true; do sleep 1000; done' > /start.sh && chmod +x /start.sh
# =========================================
# EXPOSE PORTS
# =========================================
EXPOSE 7860
EXPOSE 22
# =========================================
# START CONTAINER
# =========================================
CMD ["/bin/bash", "/start.sh"] |