FROM ubuntu:22.04 ENV DEBIAN_FRONTEND=noninteractive ENV HOSTNAME=Nobita # ----------------------------- # Install Basic & Node.js v20 # ----------------------------- RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates \ curl \ wget \ git \ sudo \ procps \ && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \ && apt-get install -y nodejs \ && rm -rf /var/lib/apt/lists/* # ----------------------------- # Install code-server (VS Code) # ----------------------------- RUN curl -fsSL https://code-server.dev/install.sh | sh # ----------------------------- # Setup User & Workspace # ----------------------------- RUN useradd -m -u 1000 user WORKDIR /home/user/app # Siapkan folder di /tmp biar gak Permission Denied RUN mkdir -p /tmp/vsc /tmp/ext && chown -R user:user /tmp/vsc /tmp/ext USER root EXPOSE 7860 # ----------------------------- # Smart Startup (DNS + VS Code) # ----------------------------- # SUNTIKAN DNS: Nameserver Google & Cloudflare CMD bash -c "echo -e 'nameserver 8.8.8.8\nnameserver 1.1.1.1' > /etc/resolv.conf; \ code-server --bind-addr 0.0.0.0:7860 \ --auth none \ --user-data-dir /tmp/vsc \ --extensions-dir /tmp/ext \ --disable-telemetry"