Compare commits

...

39 Commits

Author SHA1 Message Date
LinuxServer-CI
9d5210b14a Bot Updating Package Versions 2022-10-23 14:40:36 +02:00
LinuxServer-CI
2d0ebfad3b Bot Updating Package Versions 2022-10-05 18:49:43 +02:00
aptalca
3223edf3a6 Merge pull request #128 from linuxserver/recommended
add back recommended deps
2022-10-05 12:44:31 -04:00
aptalca
3be76d82ea add back recommended deps 2022-10-05 12:21:53 -04:00
LinuxServer-CI
ad7b7bfcf6 Bot Updating Package Versions 2022-10-01 19:44:44 +02:00
aptalca
b55b470d99 Merge pull request #125 from linuxserver/jammy
rebase to jammy, switch to s6v3, fix chown
2022-10-01 13:40:31 -04:00
aptalca
300d1a22b3 increase readiness retries 2022-09-29 11:47:53 -04:00
aptalca
9a3c62fd32 add service readiness 2022-09-29 11:37:34 -04:00
aptalca
76b18b2e80 fix .ssh perms 2022-09-29 10:29:16 -04:00
aptalca
04cdba5c2b rebase to jammy, switch to s6v3, fix chown 2022-09-29 09:40:19 -04:00
LinuxServer-CI
c2fa63001f Bot Updating Package Versions 2022-09-25 07:37:42 -05:00
LinuxServer-CI
d0c5345eda Bot Updating Templated Files 2022-09-18 07:35:18 -05:00
LinuxServer-CI
6722978e0a Bot Updating Package Versions 2022-09-04 07:36:34 -05:00
LinuxServer-CI
c55fc69b87 Bot Updating Package Versions 2022-07-17 14:32:18 +02:00
LinuxServer-CI
60465428f3 Bot Updating Package Versions 2022-07-10 07:31:19 -05:00
LinuxServer-CI
5851388cf4 Bot Updating Package Versions 2022-07-01 23:48:00 +02:00
LinuxServer-CI
0f0354ded4 Bot Updating Package Versions 2022-06-26 07:30:52 -05:00
LinuxServer-CI
d41e959c3f Bot Updating Package Versions 2022-06-19 14:30:24 +02:00
LinuxServer-CI
393806fd5e Bot Updating Package Versions 2022-06-12 07:28:56 -05:00
LinuxServer-CI
a87b1ef82d Bot Updating Package Versions 2022-05-29 07:32:11 -05:00
LinuxServer-CI
fd84ed821b Bot Updating Package Versions 2022-05-22 14:31:52 +02:00
LinuxServer-CI
a56e57ea9b Bot Updating Package Versions 2022-05-15 07:35:21 -05:00
LinuxServer-CI
302fdc380d Bot Updating Package Versions 2022-05-06 22:50:48 +02:00
LinuxServer-CI
20eda117c2 Bot Updating Templated Files 2022-05-06 15:47:11 -05:00
LinuxServer-CI
ad0b0c640a Bot Updating Package Versions 2022-05-01 14:34:59 +02:00
LinuxServer-CI
9a9f16ab3b Bot Updating Templated Files 2022-05-01 07:31:19 -05:00
LinuxServer-CI
67211293ab Bot Updating Templated Files 2022-05-01 07:30:02 -05:00
LinuxServer-CI
0b620f304c Bot Updating Package Versions 2022-04-15 00:49:00 +02:00
LinuxServer-CI
3c58da4f19 Bot Updating Package Versions 2022-04-03 14:28:49 +02:00
LinuxServer-CI
1cece84c50 Bot Updating Package Versions 2022-03-22 18:48:23 -05:00
LinuxServer-CI
69cf23d516 Bot Updating Package Versions 2022-03-13 07:27:31 -05:00
LinuxServer-CI
21f7dce24d Bot Updating Package Versions 2022-03-02 21:47:07 +01:00
LinuxServer-CI
da74981da3 Bot Updating Package Versions 2022-02-27 13:26:57 +01:00
LinuxServer-CI
e4e82382a0 Bot Updating Package Versions 2022-02-21 04:46:30 +01:00
aptalca
e9822d8efc copy pasta fail 2022-02-20 19:40:20 -08:00
aptalca
b087315336 use official tarballs and patch arm builds 2022-02-20 19:40:20 -08:00
aptalca
29c861029a add libatomic 2022-02-20 19:40:20 -08:00
aptalca
a1fa7f021e install using official debs 2022-02-20 19:40:20 -08:00
LinuxServer-CI
16909c6274 Bot Updating Package Versions 2022-02-20 12:33:41 +00:00
22 changed files with 277 additions and 368 deletions

View File

@@ -18,7 +18,7 @@ jobs:
fi fi
echo "**** External trigger running off of master branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_CODE_SERVER_MASTER\". ****" echo "**** External trigger running off of master branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_CODE_SERVER_MASTER\". ****"
echo "**** Retrieving external version ****" echo "**** Retrieving external version ****"
EXT_RELEASE=$(curl -sX GET https://registry.yarnpkg.com/code-server | jq -r '."dist-tags".latest' | sed 's|^|v|') EXT_RELEASE=$(curl -u ${{ secrets.CR_USER }}:${{ secrets.CR_PAT }} -sX GET https://api.github.com/repos/coder/code-server/releases/latest | jq -r '.tag_name' | sed 's|^v||')
if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then
echo "**** Can't retrieve external version, exiting ****" echo "**** Can't retrieve external version, exiting ****"
FAILURE_REASON="Can't retrieve external version for code-server branch master" FAILURE_REASON="Can't retrieve external version for code-server branch master"

View File

@@ -1,4 +1,4 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:focal FROM ghcr.io/linuxserver/baseimage-ubuntu:jammy
# set version label # set version label
ARG BUILD_DATE ARG BUILD_DATE
@@ -8,53 +8,32 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA
LABEL maintainer="aptalca" LABEL maintainer="aptalca"
# environment settings # environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ENV HOME="/config" ENV HOME="/config"
RUN \ RUN \
echo "**** install node repo ****" && \
apt-get update && \
apt-get install -y \
gnupg && \
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
echo 'deb https://deb.nodesource.com/node_14.x focal main' \
> /etc/apt/sources.list.d/nodesource.list && \
curl -s https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
echo 'deb https://dl.yarnpkg.com/debian/ stable main' \
> /etc/apt/sources.list.d/yarn.list && \
echo "**** install build dependencies ****" && \
apt-get update && \
apt-get install -y \
build-essential \
libx11-dev \
libxkbfile-dev \
pkg-config \
python3 && \
echo "**** install runtime dependencies ****" && \ echo "**** install runtime dependencies ****" && \
apt-get update && \
apt-get install -y \ apt-get install -y \
git \ git \
jq \ jq \
libatomic1 \
nano \ nano \
net-tools \ net-tools \
nodejs \ netcat \
sudo \ sudo && \
yarn && \
echo "**** install code-server ****" && \ echo "**** install code-server ****" && \
if [ -z ${CODE_RELEASE+x} ]; then \ if [ -z ${CODE_RELEASE+x} ]; then \
CODE_RELEASE=$(curl -sX GET https://registry.yarnpkg.com/code-server \ CODE_RELEASE=$(curl -sX GET https://api.github.com/repos/coder/code-server/releases/latest \
| jq -r '."dist-tags".latest' | sed 's|^|v|'); \ | awk '/tag_name/{print $4;exit}' FS='[""]' | sed 's|^v||'); \
fi && \ fi && \
CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \ mkdir -p /app/code-server && \
npm config set python python3 && \ curl -o \
yarn config set network-timeout 600000 -g && \ /tmp/code-server.tar.gz -L \
yarn --production --verbose --frozen-lockfile global add code-server@"$CODE_VERSION" && \ "https://github.com/coder/code-server/releases/download/v${CODE_RELEASE}/code-server-${CODE_RELEASE}-linux-amd64.tar.gz" && \
yarn cache clean && \ tar xf /tmp/code-server.tar.gz -C \
/app/code-server --strip-components=1 && \
echo "**** clean up ****" && \ echo "**** clean up ****" && \
apt-get purge --auto-remove -y \
build-essential \
libx11-dev \
libxkbfile-dev \
libsecret-1-dev \
pkg-config && \
apt-get clean && \ apt-get clean && \
rm -rf \ rm -rf \
/config/* \ /config/* \

View File

@@ -1,4 +1,4 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-focal FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-jammy
# set version label # set version label
ARG BUILD_DATE ARG BUILD_DATE
@@ -8,53 +8,32 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA
LABEL maintainer="aptalca" LABEL maintainer="aptalca"
# environment settings # environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ENV HOME="/config" ENV HOME="/config"
RUN \ RUN \
echo "**** install node repo ****" && \
apt-get update && \
apt-get install -y \
gnupg && \
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
echo 'deb https://deb.nodesource.com/node_14.x focal main' \
> /etc/apt/sources.list.d/nodesource.list && \
curl -s https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
echo 'deb https://dl.yarnpkg.com/debian/ stable main' \
> /etc/apt/sources.list.d/yarn.list && \
echo "**** install build dependencies ****" && \
apt-get update && \
apt-get install -y \
build-essential \
libx11-dev \
libxkbfile-dev \
pkg-config \
python3 && \
echo "**** install runtime dependencies ****" && \ echo "**** install runtime dependencies ****" && \
apt-get update && \
apt-get install -y \ apt-get install -y \
git \ git \
jq \ jq \
libatomic1 \
nano \ nano \
net-tools \ net-tools \
nodejs \ netcat \
sudo \ sudo && \
yarn && \
echo "**** install code-server ****" && \ echo "**** install code-server ****" && \
if [ -z ${CODE_RELEASE+x} ]; then \ if [ -z ${CODE_RELEASE+x} ]; then \
CODE_RELEASE=$(curl -sX GET https://registry.yarnpkg.com/code-server \ CODE_RELEASE=$(curl -sX GET https://api.github.com/repos/coder/code-server/releases/latest \
| jq -r '."dist-tags".latest' | sed 's|^|v|'); \ | awk '/tag_name/{print $4;exit}' FS='[""]' | sed 's|^v||'); \
fi && \ fi && \
CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \ mkdir -p /app/code-server && \
npm config set python python3 && \ curl -o \
yarn config set network-timeout 600000 -g && \ /tmp/code-server.tar.gz -L \
yarn --production --verbose --frozen-lockfile global add code-server@"$CODE_VERSION" && \ "https://github.com/coder/code-server/releases/download/v${CODE_RELEASE}/code-server-${CODE_RELEASE}-linux-arm64.tar.gz" && \
yarn cache clean && \ tar xf /tmp/code-server.tar.gz -C \
/app/code-server --strip-components=1 && \
echo "**** clean up ****" && \ echo "**** clean up ****" && \
apt-get purge --auto-remove -y \
build-essential \
libx11-dev \
libxkbfile-dev \
libsecret-1-dev \
pkg-config && \
apt-get clean && \ apt-get clean && \
rm -rf \ rm -rf \
/config/* \ /config/* \

View File

@@ -1,4 +1,4 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-focal FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-jammy
# set version label # set version label
ARG BUILD_DATE ARG BUILD_DATE
@@ -8,53 +8,32 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA
LABEL maintainer="aptalca" LABEL maintainer="aptalca"
# environment settings # environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ENV HOME="/config" ENV HOME="/config"
RUN \ RUN \
echo "**** install node repo ****" && \
apt-get update && \
apt-get install -y \
gnupg && \
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
echo 'deb https://deb.nodesource.com/node_14.x focal main' \
> /etc/apt/sources.list.d/nodesource.list && \
curl -s https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
echo 'deb https://dl.yarnpkg.com/debian/ stable main' \
> /etc/apt/sources.list.d/yarn.list && \
echo "**** install build dependencies ****" && \
apt-get update && \
apt-get install -y \
build-essential \
libx11-dev \
libxkbfile-dev \
pkg-config \
python3 && \
echo "**** install runtime dependencies ****" && \ echo "**** install runtime dependencies ****" && \
apt-get update && \
apt-get install -y \ apt-get install -y \
git \ git \
jq \ jq \
libatomic1 \
nano \ nano \
net-tools \ net-tools \
nodejs \ netcat \
sudo \ sudo && \
yarn && \
echo "**** install code-server ****" && \ echo "**** install code-server ****" && \
if [ -z ${CODE_RELEASE+x} ]; then \ if [ -z ${CODE_RELEASE+x} ]; then \
CODE_RELEASE=$(curl -sX GET https://registry.yarnpkg.com/code-server \ CODE_RELEASE=$(curl -sX GET https://api.github.com/repos/coder/code-server/releases/latest \
| jq -r '."dist-tags".latest' | sed 's|^|v|'); \ | awk '/tag_name/{print $4;exit}' FS='[""]' | sed 's|^v||'); \
fi && \ fi && \
CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \ mkdir -p /app/code-server && \
npm config set python python3 && \ curl -o \
yarn config set network-timeout 600000 -g && \ /tmp/code-server.tar.gz -L \
yarn --production --verbose --frozen-lockfile global add code-server@"$CODE_VERSION" && \ "https://github.com/coder/code-server/releases/download/v${CODE_RELEASE}/code-server-${CODE_RELEASE}-linux-armv7l.tar.gz" && \
yarn cache clean && \ tar xf /tmp/code-server.tar.gz -C \
/app/code-server --strip-components=1 && \
echo "**** clean up ****" && \ echo "**** clean up ****" && \
apt-get purge --auto-remove -y \
build-essential \
libx11-dev \
libxkbfile-dev \
libsecret-1-dev \
pkg-config && \
apt-get clean && \ apt-get clean && \
rm -rf \ rm -rf \
/config/* \ /config/* \

12
Jenkinsfile vendored
View File

@@ -104,7 +104,7 @@ pipeline {
steps{ steps{
script{ script{
env.EXT_RELEASE = sh( env.EXT_RELEASE = sh(
script: ''' curl -sX GET https://registry.yarnpkg.com/code-server | jq -r '."dist-tags".latest' | sed 's|^|v|' ''', script: ''' curl -sX GET https://api.github.com/repos/coder/code-server/releases/latest | jq -r '.tag_name' | sed 's|^v||' ''',
returnStdout: true).trim() returnStdout: true).trim()
env.RELEASE_LINK = 'custom_command' env.RELEASE_LINK = 'custom_command'
} }
@@ -343,9 +343,11 @@ pipeline {
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
cd ${TEMPDIR}/unraid/templates/ cd ${TEMPDIR}/unraid/templates/
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
echo "Image is on the ignore list, removing Unraid template" echo "Image is on the ignore list, marking Unraid template as deprecated"
git rm unraid/${CONTAINER_NAME}.xml || : cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
git commit -m 'Bot Removing Deprecated Unraid Template' || : git add -u unraid/${CONTAINER_NAME}.xml
git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Moving Deprecated Unraid Template' || :
else else
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/ cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
git add unraid/${CONTAINER_NAME}.xml git add unraid/${CONTAINER_NAME}.xml
@@ -708,7 +710,7 @@ pipeline {
-e DO_REGION="ams3" \ -e DO_REGION="ams3" \
-e DO_BUCKET="lsio-ci" \ -e DO_BUCKET="lsio-ci" \
-t ghcr.io/linuxserver/ci:latest \ -t ghcr.io/linuxserver/ci:latest \
python /ci/ci.py''' python3 test_build.py'''
} }
} }
} }

View File

@@ -52,27 +52,17 @@ Find us at:
## Supported Architectures ## Supported Architectures
Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/). We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
Simply pulling `lscr.io/linuxserver/code-server` should retrieve the correct image for your arch, but you can also pull specific arch images via tags. Simply pulling `lscr.io/linuxserver/code-server:latest` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
The architectures supported by this image are: The architectures supported by this image are:
| Architecture | Tag | | Architecture | Available | Tag |
| :----: | --- | | :----: | :----: | ---- |
| x86-64 | amd64-latest | | x86-64 | ✅ | amd64-\<version tag\> |
| arm64 | arm64v8-latest | | arm64 | ✅ | arm64v8-\<version tag\> |
| armhf | arm32v7-latest | | armhf| ✅ | arm32v7-\<version tag\> |
## Version Tags
This image provides various versions that are available via tags. `latest` tag usually provides the latest stable version. Others are considered under development and caution must be exercised when using them.
| Tag | Description |
| :----: | --- |
| latest | Stable releases |
| focal | DEPRECATED (no longer updated, `latest` is rebased on focal) - Stable releases, based on Ubuntu Focal |
| development | DEPRECATED (no longer updated) - Prereleases from their GitHub |
## Application Setup ## Application Setup
@@ -100,7 +90,7 @@ Here are some example snippets to help you get started creating a container.
version: "2.1" version: "2.1"
services: services:
code-server: code-server:
image: lscr.io/linuxserver/code-server image: lscr.io/linuxserver/code-server:latest
container_name: code-server container_name: code-server
environment: environment:
- PUID=1000 - PUID=1000
@@ -136,7 +126,7 @@ docker run -d \
-p 8443:8443 \ -p 8443:8443 \
-v /path/to/appdata/config:/config \ -v /path/to/appdata/config:/config \
--restart unless-stopped \ --restart unless-stopped \
lscr.io/linuxserver/code-server lscr.io/linuxserver/code-server:latest
``` ```
## Parameters ## Parameters
@@ -200,7 +190,7 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
* container version number * container version number
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' code-server` * `docker inspect -f '{{ index .Config.Labels "build_version" }}' code-server`
* image version number * image version number
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/code-server` * `docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/code-server:latest`
## Updating Info ## Updating Info
@@ -218,7 +208,7 @@ Below are the instructions for updating containers:
### Via Docker Run ### Via Docker Run
* Update the image: `docker pull lscr.io/linuxserver/code-server` * Update the image: `docker pull lscr.io/linuxserver/code-server:latest`
* Stop the running container: `docker stop code-server` * Stop the running container: `docker stop code-server`
* Delete the container: `docker rm code-server` * Delete the container: `docker rm code-server`
* Recreate a new container with the same docker run parameters as instructed above (if mapped correctly to a host folder, your `/config` folder and settings will be preserved) * Recreate a new container with the same docker run parameters as instructed above (if mapped correctly to a host folder, your `/config` folder and settings will be preserved)
@@ -266,6 +256,9 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions ## Versions
* **05.10.22:** - Install recommended deps to maintain parity with the older images.
* **29.09.22:** - Rebase to jammy, switch to s6v3. Fix chown logic to skip `/config/workspace` contents.
* **20.02.22:** - Install using the official tarballs.
* **29.12.21:** - Add `install-extension` as a helper for mods to install extensions. * **29.12.21:** - Add `install-extension` as a helper for mods to install extensions.
* **06.12.21:** - Add `DEFAULT_WORKSPACE` env var. * **06.12.21:** - Add `DEFAULT_WORKSPACE` env var.
* **29.11.21:** - Rebase to Ubuntu focal. * **29.11.21:** - Rebase to Ubuntu focal.

View File

@@ -3,7 +3,7 @@
# jenkins variables # jenkins variables
project_name: docker-code-server project_name: docker-code-server
external_type: na external_type: na
custom_version_command: "curl -sX GET https://registry.yarnpkg.com/code-server | jq -r '.\"dist-tags\".latest' | sed 's|^|v|'" custom_version_command: "curl -sX GET https://api.github.com/repos/coder/code-server/releases/latest | jq -r '.tag_name' | sed 's|^v||'"
release_type: stable release_type: stable
release_tag: latest release_tag: latest
ls_branch: master ls_branch: master

View File

@@ -1,190 +1,172 @@
adduser3.118ubuntu2 adduser3.118ubuntu5
apt2.0.6 apt2.4.8
apt-utils2.0.6 apt-utils2.4.8
base-files11ubuntu5.4 base-files12ubuntu4.2
base-passwd3.5.47 base-passwd3.5.52build1
bash5.0-6ubuntu1.1 bash5.1-6ubuntu1
bsdutils1:2.34-0.1ubuntu9.1 bsdutils1:2.37.2-4ubuntu3
bzip21.0.8-2 ca-certificates20211016
ca-certificates20210119~20.04.2 coreutils8.32-4.1ubuntu1
coreutils8.30-3ubuntu2 curl7.81.0-1ubuntu1.4
curl7.68.0-1ubuntu2.7 dash0.5.11+git20210903+057cd650a4ed-3build1
dash0.5.10.2-6 debconf1.5.79ubuntu1
debconf1.5.73 debianutils5.5-1ubuntu2
debianutils4.9.1 diffutils1:3.8-0ubuntu2
diffutils1:3.7-3 dirmngr2.2.27-3ubuntu2.1
dirmngr2.2.19-3ubuntu2.1 dpkg1.21.1ubuntu2.1
dpkg1.19.7ubuntu3 e2fsprogs1.46.5-2ubuntu1.1
e2fsprogs1.45.5-2ubuntu1 findutils4.8.0-1ubuntu3
fdisk2.34-0.1ubuntu9.1 gcc-12-base12.1.0-2ubuntu1~22.04
file1:5.38-4 git1:2.34.1-1ubuntu1.5
findutils4.7.0-1ubuntu1 git-man1:2.34.1-1ubuntu1.5
gcc-10-base10.3.0-1ubuntu1~20.04 gnupg2.2.27-3ubuntu2.1
git1:2.25.1-1ubuntu3.2 gnupg-l10n2.2.27-3ubuntu2.1
git-man1:2.25.1-1ubuntu3.2 gnupg-utils2.2.27-3ubuntu2.1
gnupg2.2.19-3ubuntu2.1 gpg2.2.27-3ubuntu2.1
gnupg-l10n2.2.19-3ubuntu2.1 gpg-agent2.2.27-3ubuntu2.1
gnupg-utils2.2.19-3ubuntu2.1 gpgconf2.2.27-3ubuntu2.1
gpg2.2.19-3ubuntu2.1 gpgsm2.2.27-3ubuntu2.1
gpg-agent2.2.19-3ubuntu2.1 gpgv2.2.27-3ubuntu2.1
gpgconf2.2.19-3ubuntu2.1 gpg-wks-client2.2.27-3ubuntu2.1
gpgsm2.2.19-3ubuntu2.1 gpg-wks-server2.2.27-3ubuntu2.1
gpgv2.2.19-3ubuntu2.1 grep3.7-1build1
gpg-wks-client2.2.19-3ubuntu2.1 gzip1.10-4ubuntu4.1
gpg-wks-server2.2.19-3ubuntu2.1 hostname3.23ubuntu2
grep3.4-1 init-system-helpers1.62
gzip1.10-0ubuntu4 jq1.6-2.1ubuntu3
hostname3.23 less590-1build1
init-system-helpers1.57 libacl12.3.1-1
jq1.6-1ubuntu0.20.04.1 libapt-pkg6.02.4.8
krb5-locales1.17-6ubuntu4.1 libassuan02.5.5-1build1
less551-1ubuntu0.1 libatomic112.1.0-2ubuntu1~22.04
libacl12.2.53-6 libattr11:2.5.1-1build1
libapt-pkg6.02.0.6 libaudit11:3.0.7-1build1
libasn1-8-heimdal7.7.0+dfsg-1ubuntu1 libaudit-common1:3.0.7-1build1
libassuan02.5.3-7ubuntu2 libblkid12.37.2-4ubuntu3
libattr11:2.4.48-5 libbrotli11.0.9-2build6
libaudit11:2.8.5-2ubuntu6 libbsd00.11.5-1
libaudit-common1:2.8.5-2ubuntu6 libbz2-1.01.0.8-5build1
libblkid12.34-0.1ubuntu9.1 libc62.35-0ubuntu3.1
libbrotli11.0.7-6ubuntu0.1 libcap21:2.44-1build3
libbsd00.10.0-1 libcap-ng00.7.9-2.2build3
libbz2-1.01.0.8-2 libc-bin2.35-0ubuntu3.1
libc62.31-0ubuntu9.2 libcbor0.80.8.0-2ubuntu1
libcap-ng00.7.9-2.1build1 libcom-err21.46.5-2ubuntu1.1
libc-bin2.31-0ubuntu9.2 libcrypt11:4.4.27-1
libcbor0.60.6.0-0ubuntu1 libcurl3-gnutls7.81.0-1ubuntu1.4
libcom-err21.45.5-2ubuntu1 libcurl47.81.0-1ubuntu1.4
libcrypt11:4.4.10-10ubuntu4 libdb5.35.3.28+dfsg1-0.8ubuntu3
libcurl3-gnutls7.68.0-1ubuntu2.7 libdebconfclient00.261ubuntu1
libcurl47.68.0-1ubuntu2.7 libedit23.1-20210910-1build1
libdb5.35.3.28+dfsg1-0.6ubuntu2
libdebconfclient00.251ubuntu1
libedit23.1-20191231-1
liberror-perl0.17029-1 liberror-perl0.17029-1
libexpat12.2.9-1build1 libexpat12.4.7-1
libext2fs21.45.5-2ubuntu1 libext2fs21.46.5-2ubuntu1.1
libfdisk12.34-0.1ubuntu9.1 libffi83.4.2-4
libffi73.3-4 libfido2-11.10.0-1
libfido2-11.3.1-1ubuntu2 libgcc-s112.1.0-2ubuntu1~22.04
libgcc-s110.3.0-1ubuntu1~20.04 libgcrypt201.9.4-3ubuntu3
libgcrypt201.8.5-5ubuntu1.1 libgdbm61.23-1
libgdbm61.18.1-5 libgdbm-compat41.23-1
libgdbm-compat41.18.1-5 libgmp102:6.2.1+dfsg-3ubuntu1
libgmp102:6.2.0+dfsg-4 libgnutls303.7.3-4ubuntu1.1
libgnutls303.6.13-2ubuntu1.6 libgpg-error01.43-3
libgpg-error01.37-1 libgssapi-krb5-21.19.2-2
libgssapi3-heimdal7.7.0+dfsg-1ubuntu1 libhogweed63.7.3-1build2
libgssapi-krb5-21.17-6ubuntu4.1 libidn2-02.3.2-2build1
libhcrypto4-heimdal7.7.0+dfsg-1ubuntu1 libjq11.6-2.1ubuntu3
libheimbase1-heimdal7.7.0+dfsg-1ubuntu1 libk5crypto31.19.2-2
libheimntlm0-heimdal7.7.0+dfsg-1ubuntu1 libkeyutils11.6.1-2ubuntu3
libhogweed53.5.1+really3.5.1-2ubuntu0.2 libkrb5-31.19.2-2
libhx509-5-heimdal7.7.0+dfsg-1ubuntu1 libkrb5support01.19.2-2
libidn2-02.2.0-2 libksba81.6.0-2build1
libjq11.6-1ubuntu0.20.04.1 libldap-2.5-02.5.13+dfsg-0ubuntu0.22.04.1
libk5crypto31.17-6ubuntu4.1 libldap-common2.5.13+dfsg-0ubuntu0.22.04.1
libkeyutils11.6-6ubuntu1 liblz4-11.9.3-2build2
libkrb5-26-heimdal7.7.0+dfsg-1ubuntu1 liblzma55.2.5-2ubuntu1
libkrb5-31.17-6ubuntu4.1 libmd01.0.4-1build1
libkrb5support01.17-6ubuntu4.1 libmount12.37.2-4ubuntu3
libksba81.3.5-2 libncurses66.3-2
libldap-2.4-22.4.49+dfsg-2ubuntu1.8 libncursesw66.3-2
libldap-common2.4.49+dfsg-2ubuntu1.8 libnettle83.7.3-1build2
liblz4-11.9.2-2ubuntu0.20.04.1 libnghttp2-141.43.0-1build3
liblzma55.2.4-1ubuntu1 libnpth01.6-3build2
libmagic11:5.38-4 libnsl21.3.0-2build2
libmagic-mgc1:5.38-4 libonig56.9.7.1-2build1
libmount12.34-0.1ubuntu9.1 libp11-kit00.24.0-6build1
libmpdec22.4.2-3 libpam0g1.4.0-11ubuntu2
libncurses66.2-0ubuntu2 libpam-modules1.4.0-11ubuntu2
libncursesw66.2-0ubuntu2 libpam-modules-bin1.4.0-11ubuntu2
libnettle73.5.1+really3.5.1-2ubuntu0.2 libpam-runtime1.4.0-11ubuntu2
libnghttp2-141.40.0-1build1 libpcre2-8-010.39-3ubuntu0.1
libnpth01.6-1 libpcre32:8.39-13ubuntu0.22.04.1
libonig56.9.4-1 libperl5.345.34.0-3ubuntu1.1
libp11-kit00.23.20-1ubuntu0.1 libprocps82:3.3.17-6ubuntu2
libpam0g1.3.1-5ubuntu4.3 libpsl50.21.0-1.2build2
libpam-modules1.3.1-5ubuntu4.3 libreadline88.1.2-1
libpam-modules-bin1.3.1-5ubuntu4.3 librtmp12.4+20151223.gitfa8646d.1-2build4
libpam-runtime1.3.1-5ubuntu4.3 libsasl2-22.1.27+dfsg2-3ubuntu1
libpcre2-8-010.34-7 libsasl2-modules2.1.27+dfsg2-3ubuntu1
libpcre32:8.39-12build1 libsasl2-modules-db2.1.27+dfsg2-3ubuntu1
libperl5.305.30.0-9ubuntu0.2 libseccomp22.5.3-2ubuntu2
libprocps82:3.3.16-1ubuntu2.3 libselinux13.3-1build2
libpsl50.21.0-1ubuntu1 libsemanage23.3-1build2
libpython3.8-minimal3.8.10-0ubuntu1~20.04.2 libsemanage-common3.3-1build2
libpython3.8-stdlib3.8.10-0ubuntu1~20.04.2 libsepol23.3-1build1
libpython3-stdlib3.8.2-0ubuntu2 libsmartcols12.37.2-4ubuntu3
libreadline88.0-4 libsqlite3-03.37.2-2
libroken18-heimdal7.7.0+dfsg-1ubuntu1 libss21.46.5-2ubuntu1.1
librtmp12.4+20151223.gitfa8646d.1-2build1 libssh-40.9.6-2build1
libsasl2-22.1.27+dfsg-2 libssl33.0.2-0ubuntu1.6
libsasl2-modules2.1.27+dfsg-2 libstdc++612.1.0-2ubuntu1~22.04
libsasl2-modules-db2.1.27+dfsg-2 libsystemd0249.11-0ubuntu3.6
libseccomp22.5.1-1ubuntu1~20.04.2 libtasn1-64.18.0-4build1
libselinux13.0-1build2 libtinfo66.3-2
libsemanage13.0-1build2 libtirpc31.3.2-2ubuntu0.1
libsemanage-common3.0-1build2 libtirpc-common1.3.2-2ubuntu0.1
libsepol13.0-1 libudev1249.11-0ubuntu3.6
libsmartcols12.34-0.1ubuntu9.1 libunistring21.0-1
libsqlite3-03.31.1-4ubuntu0.2 libuuid12.37.2-4ubuntu3
libss21.45.5-2ubuntu1 libx11-62:1.7.5-1
libssh-40.9.3-2ubuntu2.2 libx11-data2:1.7.5-1
libssl1.11.1.1f-1ubuntu2.10 libxau61:1.0.9-1build5
libstdc++610.3.0-1ubuntu1~20.04 libxcb11.14-3ubuntu3
libsystemd0245.4-4ubuntu3.15 libxdmcp61:1.1.3-0ubuntu5
libtasn1-64.16.0-2 libxext62:1.3.4-1build1
libtinfo66.2-0ubuntu2 libxmuu12:1.1.3-3
libudev1245.4-4ubuntu3.15 libxxhash00.8.1-1
libunistring20.9.10-2 libzstd11.4.8+dfsg-3build1
libuuid12.34-0.1ubuntu9.1 locales2.35-0ubuntu3.1
libwind0-heimdal7.7.0+dfsg-1ubuntu1 login1:4.8.1-2ubuntu2
libx11-62:1.6.9-2ubuntu1.2 logsave1.46.5-2ubuntu1.1
libx11-data2:1.6.9-2ubuntu1.2 lsb-base11.1.0ubuntu4
libxau61:1.0.9-0ubuntu1 mawk1.3.4.20200120-3
libxcb11.14-2 mount2.37.2-4ubuntu3
libxdmcp61:1.1.3-0ubuntu1 nano6.2-1
libxext62:1.3.4-0ubuntu1 ncurses-base6.3-2
libxmuu12:1.1.3-0ubuntu1 ncurses-bin6.3-2
libzstd11.4.4+dfsg-3ubuntu0.1 netbase6.3
locales2.31-0ubuntu9.2 netcat1.218-4ubuntu1
login1:4.8.1-1ubuntu5.20.04.1 netcat-openbsd1.218-4ubuntu1
logsave1.45.5-2ubuntu1 net-tools1.60+git20181103.0eebece-1ubuntu5
lsb-base11.1.0ubuntu2 openssh-client1:8.9p1-3
mawk1.3.4.20200120-2 openssl3.0.2-0ubuntu1.6
mime-support3.64ubuntu1 passwd1:4.8.1-2ubuntu2
mount2.34-0.1ubuntu9.1 patch2.7.6-7build2
nano4.8-1ubuntu1 perl5.34.0-3ubuntu1.1
ncurses-base6.2-0ubuntu2 perl-base5.34.0-3ubuntu1.1
ncurses-bin6.2-0ubuntu2 perl-modules-5.345.34.0-3ubuntu1.1
netbase6.1 pinentry-curses1.1.1-1build2
net-tools1.60+git20180626.aebd88e-1ubuntu1 procps2:3.3.17-6ubuntu2
nodejs14.19.0-deb-1nodesource1 publicsuffix20211207.1025-1
openssh-client1:8.2p1-4ubuntu0.4 readline-common8.1.2-1
openssl1.1.1f-1ubuntu2.10 sed4.8-1ubuntu2
passwd1:4.8.1-1ubuntu5.20.04.1 sensible-utils0.0.17
patch2.7.6-6 sudo1.9.9-1ubuntu2.1
perl5.30.0-9ubuntu0.2 sysvinit-utils3.01-1ubuntu1
perl-base5.30.0-9ubuntu0.2 tar1.34+dfsg-1build3
perl-modules-5.305.30.0-9ubuntu0.2 tzdata2022c-0ubuntu0.22.04.0
pinentry-curses1.1.0-3build1 ubuntu-keyring2021.03.26
procps2:3.3.16-1ubuntu2.3 usrmerge25ubuntu2
publicsuffix20200303.0012-1 util-linux2.37.2-4ubuntu3
python33.8.2-0ubuntu2 xauth1:1.1-1build2
python3.83.8.10-0ubuntu1~20.04.2 zlib1g1:1.2.11.dfsg-2ubuntu9.1
python3.8-minimal3.8.10-0ubuntu1~20.04.2
python3-minimal3.8.2-0ubuntu2
readline-common8.0-4
sed4.7-1
sensible-utils0.0.12+nmu1
sudo1.8.31-1ubuntu1.2
sysvinit-utils2.96-2.1ubuntu1
tar1.30+dfsg-7ubuntu0.20.04.1
tzdata2021e-0ubuntu0.20.04
ubuntu-keyring2020.02.11.4
util-linux2.34-0.1ubuntu9.1
xauth1:1.1-0ubuntu1
xz-utils5.2.4-1ubuntu1
yarn1.22.17-1
zlib1g1:1.2.11.dfsg-2ubuntu1.2

View File

@@ -26,11 +26,9 @@ available_architectures:
- { arch: "{{ arch_armhf }}", tag: "arm32v7-latest"} - { arch: "{{ arch_armhf }}", tag: "arm32v7-latest"}
# development version # development version
development_versions: true development_versions: false
development_versions_items: development_versions_items:
- { tag: "latest", desc: "Stable releases" } - { tag: "latest", desc: "Stable releases" }
- { tag: "focal", desc: "DEPRECATED (no longer updated, `latest` is rebased on focal) - Stable releases, based on Ubuntu Focal" }
- { tag: "development", desc: "DEPRECATED (no longer updated) - Prereleases from their GitHub" }
# container parameters # container parameters
common_param_env_vars_enabled: true common_param_env_vars_enabled: true
@@ -77,6 +75,9 @@ app_setup_block: |
# changelog # changelog
changelogs: changelogs:
- { date: "05.10.22:", desc: "Install recommended deps to maintain parity with the older images." }
- { date: "29.09.22:", desc: "Rebase to jammy, switch to s6v3. Fix chown logic to skip `/config/workspace` contents." }
- { date: "20.02.22:", desc: "Install using the official tarballs." }
- { date: "29.12.21:", desc: "Add `install-extension` as a helper for mods to install extensions." } - { date: "29.12.21:", desc: "Add `install-extension` as a helper for mods to install extensions." }
- { date: "06.12.21:", desc: "Add `DEFAULT_WORKSPACE` env var." } - { date: "06.12.21:", desc: "Add `DEFAULT_WORKSPACE` env var." }
- { date: "29.11.21:", desc: "Rebase to Ubuntu focal." } - { date: "29.11.21:", desc: "Rebase to Ubuntu focal." }

View File

@@ -22,21 +22,10 @@ fi
[[ ! -f /config/.profile ]] && \ [[ ! -f /config/.profile ]] && \
cp /root/.profile /config/.profile cp /root/.profile /config/.profile
# permissions # fix permissions (ignore contents of /config/workspace)
if [ -f "/usr/bin/find" ] && [ -f "/usr/bin/xargs" ]; then find /config -path /config/workspace -prune -o -exec chown abc:abc {} +
CORES=$(nproc --all) chown abc:abc /config/workspace
chmod 700 /config/.ssh
# Split workload between config and workspace if [ -n "$(ls -A /config/.ssh)" ]; then
echo "setting permissions::configuration" chmod 600 /config/.ssh/*
find /config -path /config/workspace -prune -false -o -type d -print0 | \
xargs --null -r --max-args=1 --max-procs=$((CORES*2*8)) \
chown -R abc:abc
echo "setting permissions::workspace"
chown abc:abc /config/workspace
else
# Set permissions on data mount
# do not decend into the workspace
chown -R abc:abc "$(ls /config -I workspace)"
chown abc:abc /config/workspace
fi fi

View File

@@ -0,0 +1 @@
oneshot

View File

@@ -0,0 +1 @@
/etc/s6-overlay/s6-rc.d/init-code-server/run

View File

@@ -0,0 +1 @@
3

View File

@@ -0,0 +1,26 @@
#!/usr/bin/with-contenv bash
if [ -n "${PASSWORD}" ] || [ -n "${HASHED_PASSWORD}" ]; then
AUTH="password"
else
AUTH="none"
echo "starting with no password"
fi
if [ -z ${PROXY_DOMAIN+x} ]; then
PROXY_DOMAIN_ARG=""
else
PROXY_DOMAIN_ARG="--proxy-domain=${PROXY_DOMAIN}"
fi
exec \
s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z 127.0.0.1 8443" \
s6-setuidgid abc \
/app/code-server/bin/code-server \
--bind-addr 0.0.0.0:8443 \
--user-data-dir /config/data \
--extensions-dir /config/extensions \
--disable-telemetry \
--auth "${AUTH}" \
"${PROXY_DOMAIN_ARG}" \
"${DEFAULT_WORKSPACE:-/config/workspace}"

View File

@@ -0,0 +1 @@
longrun

View File

@@ -1,25 +0,0 @@
#!/usr/bin/with-contenv bash
if [ -n "${PASSWORD}" ] || [ -n "${HASHED_PASSWORD}" ]; then
AUTH="password"
else
AUTH="none"
echo "starting with no password"
fi
if [ -z ${PROXY_DOMAIN+x} ]; then
PROXY_DOMAIN_ARG=""
else
PROXY_DOMAIN_ARG="--proxy-domain=${PROXY_DOMAIN}"
fi
exec \
s6-setuidgid abc \
/usr/local/bin/code-server \
--bind-addr 0.0.0.0:8443 \
--user-data-dir /config/data \
--extensions-dir /config/extensions \
--disable-telemetry \
--auth "${AUTH}" \
"${PROXY_DOMAIN_ARG}" \
"${DEFAULT_WORKSPACE:-/config/workspace}"

View File

@@ -1,7 +1,7 @@
#!/usr/bin/with-contenv bash #!/usr/bin/with-contenv bash
# shellcheck shell=bash # shellcheck shell=bash
_install=(/usr/local/bin/code-server "--extensions-dir" "/config/extensions" "--install-extension") _install=(/app/code-server/bin/code-server "--extensions-dir" "/config/extensions" "--install-extension")
if [ "$(whoami)" == "abc" ]; then if [ "$(whoami)" == "abc" ]; then
"${_install[@]}" "$@" "${_install[@]}" "$@"