• Joined on 2024-12-14

theia (uwu)

Published 2025-06-17 18:17:06 +00:00 by Tulis

Installation

docker pull git.tulisiowice.top/tulis/theia:uwu
sha256:7cb2085aaa2ae0fa284a428a881fb0aeb6ed02e807e243f76db41391255b6f0f

Image Layers

# debian.sh --arch 'amd64' out/ 'bullseye' '@1749513600'
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg netbase wget ; rm -rf /var/lib/apt/lists/* # buildkit
RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends git mercurial openssh-client subversion procps ; rm -rf /var/lib/apt/lists/* # buildkit
RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends autoconf automake bzip2 default-libmysqlclient-dev dpkg-dev file g++ gcc imagemagick libbz2-dev libc6-dev libcurl4-openssl-dev libdb-dev libevent-dev libffi-dev libgdbm-dev libglib2.0-dev libgmp-dev libjpeg-dev libkrb5-dev liblzma-dev libmagickcore-dev libmagickwand-dev libmaxminddb-dev libncurses5-dev libncursesw5-dev libpng-dev libpq-dev libreadline-dev libsqlite3-dev libssl-dev libtool libwebp-dev libxml2-dev libxslt-dev libyaml-dev make patch unzip xz-utils zlib1g-dev ; rm -rf /var/lib/apt/lists/* # buildkit
RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit
ENV NODE_VERSION=20.19.2
RUN /bin/sh -c ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64';; ppc64el) ARCH='ppc64le';; s390x) ARCH='s390x';; arm64) ARCH='arm64';; armhf) ARCH='armv7l';; i386) ARCH='x86';; *) echo "unsupported architecture"; exit 1 ;; esac && export GNUPGHOME="$(mktemp -d)" && set -ex && for key in C0D6248439F1D5604AAFFB4021D900FFDB233756 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version && rm -rf /tmp/* # buildkit
ENV YARN_VERSION=1.22.22
RUN /bin/sh -c set -ex && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && yarn --version && rm -rf /tmp/* # buildkit
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
ENTRYPOINT ["docker-entrypoint.sh"]
CMD ["node"]
RUN /bin/sh -c adduser --system --group theia && echo "theia:theia" | chpasswd # buildkit
RUN /bin/sh -c chmod g+rw /home && mkdir -p /home/project && mkdir /build/ && mkdir /build/theia && mkdir /build/run && chown -R theia:theia /home/theia && chown -R theia:theia /home/project && chown -R theia:theia /build/theia && chown -R theia:theia /build/run # buildkit
RUN /bin/sh -c usermod -aG sudo theia # buildkit
RUN /bin/sh -c apt-get update && apt-get install -y wget apt-transport-https && apt-get update && apt-get install -y git openssh-client openssh-server bash libsecret-1-0 sudo curl gnupg unzip maven && apt-get purge -y wget && apt-get clean # buildkit
RUN /bin/sh -c curl -fsSL https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor -o /etc/apt/trusted.gpg.d/adoptium.gpg && echo "deb https://packages.adoptium.net/artifactory/deb bullseye main" > /etc/apt/sources.list.d/adoptium.list # buildkit
RUN /bin/sh -c apt-get update && apt-get install -y temurin-21-jdk # buildkit
RUN /bin/sh -c echo "theia ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/theia && chmod 440 /etc/sudoers.d/theia # buildkit
ENV HOME=/home/theia
WORKDIR /home/theia
RUN /bin/sh -c echo 'if [ "$TERM" != "dumb" ]; then\n PS1="\[\e[01;32m\]\u@\h\[\e[00m\]:\[\e[01;34m\]\w\[\e[00m\]\$ "\nfi\n\nalias ls="ls --color=auto"\nalias grep="grep --color=auto"\nalias fgrep="fgrep --color=auto"\nalias egrep="egrep --color=auto"\n\neval "$(dircolors -b)"\n' >> /home/theia/.bashrc # buildkit
RUN /bin/sh -c chown theia:theia /home/theia/.bashrc # buildkit
COPY --chown=theia:theia entrypoint.sh /home/run/entrypoint.sh # buildkit
COPY --chown=theia:theia /build/theia /build/theia # buildkit
EXPOSE map[3000/tcp:{}]
ENV SHELL=/bin/bash THEIA_DEFAULT_PLUGINS=local-dir:/home/theia/plugins
ENV USE_LOCAL_GIT=true
USER theia
WORKDIR /home/run
RUN /bin/sh -c chmod +x entrypoint.sh # buildkit
ENTRYPOINT ["./entrypoint.sh"]
CMD ["/home/project" "--hostname=0.0.0.0" "--plugins=local-dir:plugins"]
Details
Container
2025-06-17 18:17:06 +00:00
6
OCI / Docker
linux/amd64
940 MiB
Versions (1) View all
uwu 2025-06-17