[CIVIS-11019] update to use ubuntu 22.04 fips enabled base image (#1)

* ubuntu fips

* Improve Dockerfile formatting and readability

- Use consistent 2-space indentation throughout
- Remove unnecessary comment blocks
- Better organize ARG declarations
- Improve line continuation formatting

🤖 Generated with [opencode](https://opencode.ai)

Co-Authored-By: opencode <noreply@opencode.ai>

* remove extraneous file

* remove jenkins things

* remove extra files

* Add docker-compose configuration for FIPS-compliant code-server

- Add docker-compose.yml with build args for VERSION and CODE_RELEASE
- Add .env.example with configurable environment variables
- Update .gitignore and .dockerignore to exclude .env files
- Set CODE_RELEASE default to 4.102.1 for stable builds
- Configure image name: gabemendoza1/codecloud-code-server

🤖 Generated with [opencode](https://opencode.ai)

Co-Authored-By: opencode <noreply@opencode.ai>

* simplify

* update image

* update image

* update image

* add netcat-openbsd

* netcat

* default ids 0

* remove extra files

* remove more workflows

* upgrade Python to 3.12

🤖 Generated with [opencode](https://opencode.ai)

Co-Authored-By: opencode <noreply@opencode.ai>

* add buildspec

* update buildspec defs

* update buildspec defs

* ubuntu-fips-2

* fixed buildspec args

* FIPS_REPOSITORY_URI

* styling

* update placeholders

* latest

* latest

* put that thing back where it came from or so help me

* only need 1

* simplify Dockerfile

* no need ignores

* no need ignores

* simplify

* remove comment

* trigger codebuild

* jammy

---------

Co-authored-by: opencode <noreply@opencode.ai>
This commit is contained in:
Gabe Mendoza 2025-07-25 13:11:33 -05:00 committed by GitHub
parent b5d20f6114
commit c8a8ee928e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
14 changed files with 158 additions and 2076 deletions

View File

@ -1,43 +1,38 @@
<!--- Provide a general summary of your changes in the Title above -->
## Description
[linuxserverurl]: https://linuxserver.io
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl]
Required: Please provide a brief description of what this pull request is trying to accomplish.
>
<!--- Before submitting a pull request please check the following -->
## Context, Consequences, & Considerations
<!--- If this is a fix for a typo (in code, documentation, or the README) please file an issue and let us sort it out. We do not need a PR -->
<!--- Ask yourself if this modification is something the whole userbase will benefit from, if this is a specific change for corner case functionality or plugins please look at making a Docker Mod or local script https://blog.linuxserver.io/2019/09/14/customizing-our-containers/ -->
<!--- That if the PR is addressing an existing issue include, closes #<issue number> , in the body of the PR commit message -->
<!--- You have included links to any files / patches etc your PR may be using in the body of the PR commit message -->
<!--- We maintain a changelog of major revisions to the container at the end of readme-vars.yml in the root of this repository, please add your changes there if appropriate -->
Required: Please step through the following list, pausing at each item to consider your change in relation to the item's context.
Check the box to mark that it applies, and enter your relevant notes under the item.
- [ ] Security: This has security implications. This includes (but not limited to) adding users, modifying user/app permissions, network rules/policies, changing a system interconnection, or changing an authorization strategy.
- [ ] This PR does not require security review. These changes are part of a project plan that has already undergone security review. The link is provided below.
- [ ] This PR requires security review. Add the `security` label to this PR then request a review from the [Security Code Reviewers Team](https://github.com/orgs/civisanalytics/teams/security-code-reviewers).
<!--- Coding guidelines: -->
<!--- 1. Installed packages in the Dockerfiles should be in alphabetical order -->
<!--- 2. Changes to Dockerfile should be replicated in Dockerfile.armhf and Dockerfile.aarch64 if applicable -->
<!--- 3. Indentation style (tabs vs 4 spaces vs 1 space) should match the rest of the document -->
<!--- 4. Readme is auto generated from readme-vars.yml, make your changes there -->
>
------------------------------
- [ ] Execution: This change requires commands to be run outside of the normal merge.
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-code-server/blob/master/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
>
------------------------------
- [ ] Impact: This change may cause service interruptions.
<!--- We welcome all PRs though this doesnt guarantee it will be accepted. -->
>
## Description:
<!--- Describe your changes in detail -->
- [ ] Testing: How did you test this change (unit tests, acceptance tests, etc.)? Did you do any manual testing?
## Benefits of this PR and context:
<!--- Please explain why we should accept this PR. If this fixes an outstanding bug, please reference the issue # -->
>
## How Has This Been Tested?
<!--- Please describe in detail how you tested your changes. -->
<!--- Include details of your testing environment, and the tests you ran to -->
<!--- see how your change affects other areas of the code, etc. -->
- [ ] Testing: How will you confirm this change once it's merged?
>
## Source / References:
<!--- Please include any forum posts/github links relevant to the PR -->
- [ ] Documentation: Documentation to reflect this change has been added to Confluence or Zendesk.
>
- [ ] **All items of the checklist have been considered and this PR description is complete.**

View File

@ -1,19 +0,0 @@
name: Issue & PR Tracker
on:
issues:
types: [opened,reopened,labeled,unlabeled,closed]
pull_request_target:
types: [opened,reopened,review_requested,review_request_removed,labeled,unlabeled,closed]
pull_request_review:
types: [submitted,edited,dismissed]
permissions:
contents: read
jobs:
manage-project:
permissions:
issues: write
uses: linuxserver/github-workflows/.github/workflows/issue-pr-tracker.yml@v1
secrets: inherit

View File

@ -1,16 +0,0 @@
name: Mark stale issues and pull requests
on:
schedule:
- cron: '31 1 * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
stale:
permissions:
issues: write
pull-requests: write
uses: linuxserver/github-workflows/.github/workflows/issues-cron.yml@v1
secrets: inherit

View File

@ -1,19 +0,0 @@
name: Greetings
on: [pull_request_target, issues]
permissions:
contents: read
jobs:
greeting:
permissions:
issues: write
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/first-interaction@v1
with:
issue-message: 'Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.'
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-code-server/blob/master/.github/PULL_REQUEST_TEMPLATE.md)!'
repo-token: ${{ secrets.GITHUB_TOKEN }}

View File

@ -1,13 +1,47 @@
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-ubuntu:noble
ARG ECR_ACCOUNT_ID
ARG ECR_REGION=us-east-1
ARG BASE_IMAGE_NAME=docker-linuxserver-ubuntu-fips
ARG BASE_IMAGE_TAG=jammy
ARG ECR_URI=${ECR_ACCOUNT_ID}.dkr.ecr-fips.${ECR_REGION}.amazonaws.com/${BASE_IMAGE_NAME}:${BASE_IMAGE_TAG}
# set version label
FROM ${ECR_URI} as docker-code-server-python
ARG DEBIAN_FRONTEND="noninteractive"
# Install Python 3.12
RUN echo "**** install Python 3.12 ****" && \
apt-get update && \
apt-get install -y \
software-properties-common \
gpg-agent && \
curl -fsSL https://keyserver.ubuntu.com/pks/lookup?op=get\&search=0xF23C5A6CF475977595C89F51BA6932366A755776 | apt-key add - && \
echo "deb https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu jammy main" > /etc/apt/sources.list.d/deadsnakes.list && \
apt-get update && \
apt-get install -y \
python3.12 \
python3.12-dev \
python3.12-venv && \
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.12 1 && \
update-alternatives --install /usr/bin/python python /usr/bin/python3.12 1 && \
curl -sS https://bootstrap.pypa.io/get-pip.py | python3.12 && \
pip3 install --upgrade pip setuptools wheel && \
python3 --version && \
pip3 --version && \
echo "**** clean up ****" && \
apt-get clean && \
rm -rf \
/var/lib/apt/lists/* \
/tmp/*
FROM docker-code-server-python
ARG BUILD_DATE
ARG VERSION
ARG CODE_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="aptalca"
LABEL maintainer="civisanalytics"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
@ -21,6 +55,7 @@ RUN \
libatomic1 \
nano \
net-tools \
netcat-openbsd \
sudo && \
echo "**** install code-server ****" && \
if [ -z ${CODE_RELEASE+x} ]; then \

View File

@ -1,49 +0,0 @@
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-noble
# set version label
ARG BUILD_DATE
ARG VERSION
ARG CODE_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="aptalca"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ENV HOME="/config"
RUN \
echo "**** install runtime dependencies ****" && \
apt-get update && \
apt-get install -y \
git \
libatomic1 \
nano \
net-tools \
sudo && \
echo "**** install code-server ****" && \
if [ -z ${CODE_RELEASE+x} ]; then \
CODE_RELEASE=$(curl -sX GET https://api.github.com/repos/coder/code-server/releases/latest \
| awk '/tag_name/{print $4;exit}' FS='[""]' | sed 's|^v||'); \
fi && \
mkdir -p /app/code-server && \
curl -o \
/tmp/code-server.tar.gz -L \
"https://github.com/coder/code-server/releases/download/v${CODE_RELEASE}/code-server-${CODE_RELEASE}-linux-arm64.tar.gz" && \
tar xf /tmp/code-server.tar.gz -C \
/app/code-server --strip-components=1 && \
printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
echo "**** clean up ****" && \
apt-get clean && \
rm -rf \
/config/* \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
# add local files
COPY /root /
# ports and volumes
EXPOSE 8443

1210
Jenkinsfile vendored

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,21 @@
version: 0.2
phases:
pre_build:
commands:
- export ECR_ACCOUNT_ID="$(echo $FIPS_REPOSITORY_URI | cut -d'.' -f1)"
- export COMMIT_HASH_SHORT="$(echo $COMMIT_HASH | cut -c 1-7)"
- echo Logging in to Amazon ECR...
- aws ecr get-login-password --region ${AWS_DEFAULT_REGION} | docker login --username AWS --password-stdin ${FIPS_REPOSITORY_URI}
build:
commands:
- echo Building the Docker image...
- >
docker build
--build-arg ECR_ACCOUNT_ID=${ECR_ACCOUNT_ID}
--tag ${FIPS_REPOSITORY_URI}:latest
.
- docker image push --all-tags ${FIPS_REPOSITORY_URI}
post_build:
commands:
- echo Build completed!

26
buildspec/push.yaml Normal file
View File

@ -0,0 +1,26 @@
version: 0.2
phases:
pre_build:
commands:
- export ECR_ACCOUNT_ID="$(echo $FIPS_REPOSITORY_URI | cut -d'.' -f1)"
- export COMMIT_HASH_SHORT="$(echo $COMMIT_HASH | cut -c 1-7)"
- echo Logging in to Amazon ECR...
- aws ecr get-login-password --region ${AWS_DEFAULT_REGION} | docker login --username AWS --password-stdin ${FIPS_REPOSITORY_URI}
build:
commands:
- echo Building the Docker image...
- echo $FIPS_REPOSITORY_URI
- echo $COMMIT_HASH_SHORT
- echo $BRANCH_NAME
- >
docker build
--build-arg ECR_ACCOUNT_ID=${ECR_ACCOUNT_ID}
--tag ${FIPS_REPOSITORY_URI}:${COMMIT_HASH_SHORT}
--tag ${FIPS_REPOSITORY_URI}:${BRANCH_NAME}
.
- docker image push --all-tags ${FIPS_REPOSITORY_URI}
post_build:
commands:
- echo Build completed!
- printf '{"tag":"%s"}' $COMMIT_HASH_SHORT > build.json

26
buildspec/release.yaml Normal file
View File

@ -0,0 +1,26 @@
version: 0.2
phases:
pre_build:
commands:
- export ECR_ACCOUNT_ID="$(echo $FIPS_REPOSITORY_URI | cut -d'.' -f1)"
- echo Logging in to Amazon ECR...
- aws ecr get-login-password --region ${AWS_DEFAULT_REGION} | docker login --username AWS --password-stdin ${FIPS_REPOSITORY_URI}
build:
commands:
- echo Building the Docker image...
- PATCH_TAG=${TAG_NAME#"v"}
- MINOR_TAG=${PATCH_TAG%.*}
- MAJOR_TAG=${MINOR_TAG%.*}
- >
docker build
--build-arg ECR_ACCOUNT_ID=${ECR_ACCOUNT_ID}
--tag ${FIPS_REPOSITORY_URI}:${PATCH_TAG}
--tag ${FIPS_REPOSITORY_URI}:${MINOR_TAG}
--tag ${FIPS_REPOSITORY_URI}:${MAJOR_TAG}
.
- docker image push --all-tags ${FIPS_REPOSITORY_URI}
post_build:
commands:
- echo Build completed!
- printf '{"tag":"%s"}' $TAG_NAME > build.json

24
docker-compose.yml Normal file
View File

@ -0,0 +1,24 @@
---
services:
docker-code-server:
image: "${ECR_ACCOUNT_ID:-0123456789012}.dkr.ecr-fips.${ECR_REGION}.amazonaws.com/docker-code-server:${IMAGE_TAG:-latest}"
pull_policy: build
build:
context: .
dockerfile: Dockerfile
platforms:
- linux/amd64
args:
- ECR_ACCOUNT_ID=${ECR_ACCOUNT_ID:-0123456789012}
- BASE_IMAGE_TAG=${BASE_IMAGE_TAG:-latest}
- VERSION=${VERSION:-4.102.1}
- CODE_RELEASE=${CODE_RELEASE:-4.102.1}
environment:
- PUID=${PUID:-0}
- PGID=${PGID:-0}
- TZ=${TZ:-America/Chicago}
- PROXY_DOMAIN=${PROXY_DOMAIN:-}
- DEFAULT_WORKSPACE=${DEFAULT_WORKSPACE:-/workspace}
- PWA_APPNAME=${PWA_APPNAME:-code-server}
ports:
- "${HOST_PORT:-8443}:8443"

View File

@ -1,27 +0,0 @@
---
# jenkins variables
project_name: docker-code-server
external_type: na
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_tag: latest
ls_branch: master
repo_vars:
- CONTAINER_NAME = 'code-server'
- BUILD_VERSION_ARG = 'CODE_RELEASE'
- LS_USER = 'linuxserver'
- LS_REPO = 'docker-code-server'
- DOCKERHUB_IMAGE = 'linuxserver/code-server'
- DEV_DOCKERHUB_IMAGE = 'lsiodev/code-server'
- PR_DOCKERHUB_IMAGE = 'lspipepr/code-server'
- DIST_IMAGE = 'ubuntu'
- MULTIARCH='true'
- CI='true'
- CI_WEB='true'
- CI_PORT='8443'
- CI_SSL='false'
- CI_DELAY='120'
- CI_DOCKERENV=''
- CI_AUTH=''
- CI_WEBPATH=''

View File

@ -1,573 +0,0 @@
NAME VERSION TYPE
@babel/runtime 7.27.6 npm
@coder/logger 3.0.1 npm
@mapbox/node-pre-gyp 1.0.11 npm
@microsoft/1ds-core-js 3.2.13 npm
@microsoft/1ds-post-js 3.2.13 npm
@microsoft/applicationinsights-core-js 2.8.15 npm
@microsoft/applicationinsights-shims 2.0.2 npm
@microsoft/dynamicproto-js 1.1.9 npm
@parcel/watcher 2.5.1 npm
@parcel/watcher-linux-x64-glibc 2.5.1 npm
@parcel/watcher-linux-x64-musl 2.5.1 npm
@phc/format 1.0.0 npm
@tootallnate/once 3.0.0 npm
@tootallnate/quickjs-emscripten 0.23.0 npm
@vscode/deviceid 0.1.1 npm
@vscode/iconv-lite-umd 0.7.0 npm
@vscode/proxy-agent 0.32.0 npm
@vscode/ripgrep 1.15.14 npm
@vscode/spdlog 0.15.2 npm
@vscode/tree-sitter-wasm 0.1.4 npm
@vscode/vscode-languagedetection 1.0.21 npm
@vscode/windows-process-tree 0.6.0 npm
@vscode/windows-registry 1.1.0 npm
@xterm/addon-clipboard 0.2.0-beta.95 npm
@xterm/addon-image 0.9.0-beta.112 npm
@xterm/addon-ligatures 0.10.0-beta.112 npm
@xterm/addon-progress 0.2.0-beta.18 npm
@xterm/addon-search 0.16.0-beta.112 npm
@xterm/addon-serialize 0.14.0-beta.112 npm
@xterm/addon-unicode11 0.9.0-beta.112 npm
@xterm/addon-webgl 0.19.0-beta.112 npm
@xterm/headless 5.6.0-beta.112 npm
@xterm/xterm 5.6.0-beta.112 npm
OpenConsole.exe 1.22.250204002 binary (+1 duplicate)
abbrev 1.1.1 npm
accepts 2.0.0 npm
adduser 3.137ubuntu1 deb
agent-base 6.0.2 npm
agent-base 7.1.1 npm
agent-base 7.1.3 npm (+3 duplicates)
ansi-regex 5.0.1 npm
aproba 2.0.0 npm
apt 2.8.3 deb
apt-utils 2.8.3 deb
are-we-there-yet 2.0.0 npm
argon2 0.31.2 npm
argparse 2.0.1 npm
ast-types 0.13.4 npm
balanced-match 1.0.2 npm
base-files 13ubuntu10.2 deb
base-passwd 3.6.3build1 deb
base64-js 1.5.1 npm
bash 5.2.21-2ubuntu4 deb
basic-ftp 5.0.5 npm
bat 1.0.0 npm
beep-boop 1.2.3 npm
bindings 1.5.0 npm
bl 4.1.0 npm
body-parser 2.1.0 npm
brace-expansion 1.1.12 npm
braces 3.0.3 npm
bsdutils 1:2.39.3-9ubuntu6.3 deb
buffer 5.7.1 npm
buffer-alloc 1.2.0 npm
buffer-alloc-unsafe 1.1.0 npm
buffer-crc32 0.2.13 npm
buffer-fill 1.0.0 npm
builtin-notebook-renderers 1.0.0 npm
bytes 3.1.2 npm
ca-certificates 20240203 deb
call-bind-apply-helpers 1.0.2 npm
call-bound 1.0.4 npm
catatonit 0.1.7-1 deb
charenc 0.0.2 npm
chownr 1.1.4 npm
chownr 2.0.0 npm
clojure 1.0.0 npm
code-server 1.102.1 npm
code-server 4.102.1 npm
coffeescript 1.0.0 npm
color-support 1.1.3 npm
compressible 2.0.18 npm
compression 1.8.0 npm
concat-map 0.0.1 npm
configuration-editing 1.0.0 npm
conpty.dll 1.22.250204002 binary (+1 duplicate)
console-control-strings 1.1.0 npm
content-disposition 1.0.0 npm
content-type 1.0.5 npm
cookie 0.7.1 npm
cookie 0.7.2 npm (+1 duplicate)
cookie-parser 1.4.7 npm
cookie-signature 1.0.6 npm
cookie-signature 1.2.2 npm
coreutils 9.4-3ubuntu6 deb
cpp 1.0.0 npm
cron 3.0pl1-184ubuntu2 deb
cron-daemon-common 3.0pl1-184ubuntu2 deb
crypt 0.0.2 npm
csharp 1.0.0 npm
css 1.0.0 npm
css-language-features 1.0.0 npm
curl 8.5.0-2ubuntu10.6 deb
dart 1.0.0 npm
dash 0.5.12-6ubuntu5 deb
data-uri-to-buffer 6.0.2 npm
debconf 1.5.86ubuntu1 deb
debianutils 5.17build1 deb
debug 2.6.9 npm
debug 4.3.4 npm
debug 4.3.6 npm
debug 4.4.0 npm
debug-auto-launch 1.0.0 npm
debug-server-ready 1.0.0 npm
decompress-response 6.0.0 npm
deep-extend 0.6.0 npm
degenerator 5.0.1 npm
delegates 1.0.0 npm
depd 2.0.0 npm
destroy 1.2.0 npm
detect-libc 1.0.3 npm
detect-libc 2.0.1 npm
detect-libc 2.0.3 npm
diff 1.0.0 npm
diffutils 1:3.10-1build1 deb
dirmngr 2.4.4-2ubuntu17.3 deb
docker 1.0.0 npm
dpkg 1.22.6ubuntu6.1 deb
dunder-proto 1.0.1 npm
e2fsprogs 1.47.0-2.4~exp1ubuntu4.1 deb
ee-first 1.1.1 npm
emmet 1.0.0 npm
emoji-regex 8.0.0 npm
encodeurl 2.0.0 npm
end-of-stream 1.4.4 npm
env-paths 2.2.1 npm
es-define-property 1.0.1 npm
es-errors 1.3.0 npm
es-object-atoms 1.1.1 npm
es6-promisify 7.0.0 npm
escape-html 1.0.3 npm
escodegen 2.1.0 npm
esprima 4.0.1 npm
estraverse 5.3.0 npm
esutils 2.0.3 npm
etag 1.8.1 npm
eventemitter3 4.0.7 npm
expand-template 2.0.3 npm
express 5.0.1 npm
extension-editing 1.0.0 npm
fd-slicer 1.1.0 npm
file-uri-to-path 1.0.0 npm
fill-range 7.1.1 npm
finalhandler 2.1.0 npm
findutils 4.9.0-5build1 deb
follow-redirects 1.15.9 npm
font-finder 1.1.0 npm
font-ligatures 1.4.1 npm
forwarded 0.2.0 npm
fresh 0.5.2 npm
fresh 2.0.0 npm
fs-constants 1.0.0 npm
fs-extra 11.2.0 npm
fs-minipass 2.1.0 npm
fs.realpath 1.0.0 npm
fsharp 1.0.0 npm
function-bind 1.1.2 npm
gauge 3.0.2 npm
gcc-14-base 14.2.0-4ubuntu2~24.04 deb
get-intrinsic 1.3.0 npm
get-proto 1.0.1 npm
get-system-fonts 2.0.2 npm
get-uri 6.0.4 npm
git 1.0.0 npm
git 1:2.43.0-1ubuntu7.3 deb
git-base 1.0.0 npm
git-man 1:2.43.0-1ubuntu7.3 deb
github 0.0.1 npm
github-authentication 0.0.2 npm
github-from-package 0.0.0 npm
glob 7.2.3 npm
gnupg 2.4.4-2ubuntu17.3 deb
gnupg-l10n 2.4.4-2ubuntu17.3 deb
gnupg-utils 2.4.4-2ubuntu17.3 deb
go 1.0.0 npm
gopd 1.2.0 npm
gpg 2.4.4-2ubuntu17.3 deb
gpg-agent 2.4.4-2ubuntu17.3 deb
gpg-wks-client 2.4.4-2ubuntu17.3 deb
gpgconf 2.4.4-2ubuntu17.3 deb
gpgsm 2.4.4-2ubuntu17.3 deb
gpgv 2.4.4-2ubuntu17.3 deb
graceful-fs 4.2.11 npm
grep 3.11-4build1 deb
groovy 1.0.0 npm
grunt 1.0.0 npm
gulp 1.0.0 npm
gzip 1.12-1ubuntu3.1 deb
handlebars 1.0.0 npm
has-symbols 1.1.0 npm
has-unicode 2.0.1 npm
hasown 2.0.2 npm
hlsl 1.0.0 npm
hostname 3.23+nmu2ubuntu2 deb
html 1.0.0 npm
html-language-features 1.0.0 npm
http-errors 2.0.0 npm
http-proxy 1.18.1 npm
http-proxy-agent 7.0.0 npm
http-proxy-agent 7.0.2 npm
httpolyglot 0.1.2 npm
https-proxy-agent 5.0.1 npm
https-proxy-agent 7.0.2 npm
https-proxy-agent 7.0.6 npm (+1 duplicate)
i18next 25.3.0 npm
iconv-lite 0.5.2 npm
iconv-lite 0.6.3 npm
ieee754 1.2.1 npm
inflight 1.0.6 npm
inherits 2.0.4 npm (+1 duplicate)
ini 1.0.0 npm
ini 1.3.8 npm
init-system-helpers 1.66ubuntu1 deb
ip-address 9.0.5 npm (+1 duplicate)
ipaddr.js 1.9.1 npm
ipynb 1.0.0 npm
is-buffer 1.1.6 npm
is-extglob 2.1.1 npm
is-fullwidth-code-point 3.0.0 npm
is-glob 4.0.3 npm
is-number 7.0.0 npm
is-promise 4.0.0 npm
isexe 2.0.0 npm
jake 1.0.0 npm
java 1.0.0 npm
javascript 1.0.0 npm
jq 1.7.1-3build1 deb
js-base64 3.7.7 npm
js-debug 1.102.0 npm
js-debug-companion 1.1.3 npm
js-yaml 4.1.0 npm
jsbn 1.1.0 npm (+1 duplicate)
jschardet 3.1.4 npm
json 1.0.0 npm
json-language-features 1.0.0 npm
jsonfile 6.1.0 npm
julia 1.0.0 npm
just-performance 4.3.0 npm
kerberos 2.1.1 npm
keyboxd 2.4.4-2ubuntu17.3 deb
krb5-locales 1.20.1-6ubuntu2.6 deb
latex 1.0.0 npm
less 1.0.0 npm
less 590-2ubuntu2.1 deb
libacl1 2.3.2-1build1.1 deb
libapparmor1 4.0.1really4.0.1-0ubuntu0.24.04.4 deb
libapt-pkg6.0t64 2.8.3 deb
libassuan0 2.5.6-1build1 deb
libatomic1 14.2.0-4ubuntu2~24.04 deb
libattr1 1:2.5.2-1build1.1 deb
libaudit-common 1:3.1.2-2.1build1.1 deb
libaudit1 1:3.1.2-2.1build1.1 deb
libblkid1 2.39.3-9ubuntu6.3 deb
libbrotli1 1.1.0-2build2 deb
libbsd0 0.12.1-1build1.1 deb
libbz2-1.0 1.0.8-5.1build0.1 deb
libc-bin 2.39-0ubuntu8.5 deb
libc6 2.39-0ubuntu8.5 deb
libcap-ng0 0.8.4-2build2 deb
libcap2 1:2.66-5ubuntu2.2 deb
libcbor0.10 0.10.2-1.2ubuntu2 deb
libcom-err2 1.47.0-2.4~exp1ubuntu4.1 deb
libcrypt1 1:4.4.36-4build1 deb
libcurl3t64-gnutls 8.5.0-2ubuntu10.6 deb
libcurl4t64 8.5.0-2ubuntu10.6 deb
libdb5.3t64 5.3.28+dfsg2-7 deb
libdebconfclient0 0.271ubuntu3 deb
libedit2 3.1-20230828-1build1 deb
liberror-perl 0.17029-2 deb
libexpat1 2.6.1-2ubuntu0.3 deb
libext2fs2t64 1.47.0-2.4~exp1ubuntu4.1 deb
libffi8 3.4.6-1build1 deb
libfido2-1 1.14.0-1build3 deb
libgcc-s1 14.2.0-4ubuntu2~24.04 deb
libgcrypt20 1.10.3-2build1 deb
libgdbm-compat4t64 1.23-5.1build1 deb
libgdbm6t64 1.23-5.1build1 deb
libgmp10 2:6.3.0+dfsg-2ubuntu6.1 deb
libgnutls30t64 3.8.3-1.1ubuntu3.4 deb
libgpg-error0 1.47-3build2.1 deb
libgssapi-krb5-2 1.20.1-6ubuntu2.6 deb
libhogweed6t64 3.9.1-2.2build1.1 deb
libidn2-0 2.3.7-2build1.1 deb
libjq1 1.7.1-3build1 deb
libk5crypto3 1.20.1-6ubuntu2.6 deb
libkeyutils1 1.6.3-3build1 deb
libkrb5-3 1.20.1-6ubuntu2.6 deb
libkrb5support0 1.20.1-6ubuntu2.6 deb
libksba8 1.6.6-1build1 deb
libldap-common 2.6.7+dfsg-1~exp1ubuntu8.2 deb
libldap2 2.6.7+dfsg-1~exp1ubuntu8.2 deb
liblz4-1 1.9.4-1build1.1 deb
liblzma5 5.6.1+really5.4.5-1ubuntu0.2 deb
libmd0 1.1.0-2build1.1 deb
libmount1 2.39.3-9ubuntu6.3 deb
libncursesw6 6.4+20240113-1ubuntu2 deb
libnettle8t64 3.9.1-2.2build1.1 deb
libnghttp2-14 1.59.0-1ubuntu0.2 deb
libnpth0t64 1.6-3.1build1 deb
libonig5 6.9.9-1build1 deb
libp11-kit0 0.25.3-4ubuntu2.1 deb
libpam-modules 1.5.3-5ubuntu5.4 deb
libpam-modules-bin 1.5.3-5ubuntu5.4 deb
libpam-runtime 1.5.3-5ubuntu5.4 deb
libpam0g 1.5.3-5ubuntu5.4 deb
libpcre2-8-0 10.42-4ubuntu2.1 deb
libperl5.38t64 5.38.2-3.2ubuntu0.1 deb
libproc2-0 2:4.0.4-4ubuntu3.2 deb
libpsl5t64 0.21.2-1.1build1 deb
libreadline8t64 8.2-4build1 deb
librtmp1 2.4+20151223.gitfa8646d.1-2build7 deb
libsasl2-2 2.1.28+dfsg1-5ubuntu3.1 deb
libsasl2-modules 2.1.28+dfsg1-5ubuntu3.1 deb
libsasl2-modules-db 2.1.28+dfsg1-5ubuntu3.1 deb
libseccomp2 2.5.5-1ubuntu3.1 deb
libselinux1 3.5-2ubuntu2.1 deb
libsemanage-common 3.5-1build5 deb
libsemanage2 3.5-1build5 deb
libsepol2 3.5-2build1 deb
libsmartcols1 2.39.3-9ubuntu6.3 deb
libsqlite3-0 3.45.1-1ubuntu2.3 deb
libss2 1.47.0-2.4~exp1ubuntu4.1 deb
libssh-4 0.10.6-2ubuntu0.1 deb
libssl3t64 3.0.13-0ubuntu3.5 deb
libstdc++6 14.2.0-4ubuntu2~24.04 deb
libsystemd0 255.4-1ubuntu8.10 deb
libtasn1-6 4.19.0-3ubuntu0.24.04.1 deb
libtinfo6 6.4+20240113-1ubuntu2 deb
libudev1 255.4-1ubuntu8.10 deb
libunistring5 1.1-2build1.1 deb
libuuid1 2.39.3-9ubuntu6.3 deb
libx11-6 2:1.8.7-1build1 deb
libx11-data 2:1.8.7-1build1 deb
libxau6 1:1.0.9-1build6 deb
libxcb1 1.15-1ubuntu2 deb
libxdmcp6 1:1.1.3-0ubuntu6 deb
libxext6 2:1.3.4-1build2 deb
libxmuu1 2:1.1.3-3build2 deb
libxxhash0 0.8.2-2build1 deb
libzstd1 1.5.5+dfsg2-2build1.1 deb
limiter 2.1.0 npm
locales 2.39-0ubuntu8.5 deb
log 1.0.0 npm
login 1:4.13+dfsg1-4ubuntu3.2 deb
logsave 1.47.0-2.4~exp1ubuntu4.1 deb
lru-cache 6.0.0 npm
lru-cache 7.18.3 npm
lua 1.0.0 npm
make 1.0.0 npm
make-dir 3.1.0 npm
markdown 1.0.0 npm
markdown-language-features 1.0.0 npm
markdown-math 1.0.0 npm
math-intrinsics 1.1.0 npm
mawk 1.3.4.20240123-1build1 deb
md5 2.3.0 npm
media-preview 1.0.0 npm
media-typer 1.1.0 npm
merge-conflict 1.0.0 npm
merge-descriptors 2.0.0 npm
methods 1.1.2 npm
micromatch 4.0.8 npm
microsoft-authentication 0.0.1 npm
mime-db 1.52.0 npm
mime-db 1.53.0 npm
mime-types 2.1.35 npm
mime-types 3.0.0 npm
mimic-response 3.1.0 npm
minimatch 3.1.2 npm
minimist 1.2.8 npm
minipass 3.3.6 npm (+1 duplicate)
minipass 5.0.0 npm
minizlib 2.1.2 npm
mkdirp 1.0.4 npm (+1 duplicate)
mkdirp-classic 0.5.3 npm
mount 2.39.3-9ubuntu6.3 deb
ms 2.0.0 npm
ms 2.1.2 npm (+1 duplicate)
ms 2.1.3 npm
nano 7.2-2ubuntu0.1 deb
napi-build-utils 1.0.2 npm
native-watchdog 1.4.2 npm
ncurses-base 6.4+20240113-1ubuntu2 deb
ncurses-bin 6.4+20240113-1ubuntu2 deb
negotiator 0.6.4 npm
negotiator 1.0.0 npm
net-tools 2.10-0.1ubuntu4.4 deb
netbase 6.4 deb
netcat-openbsd 1.226-1ubuntu2 deb
netmask 2.0.2 npm
node 22.15.1 binary
node-abi 3.8.0 npm
node-addon-api 7.1.0 npm
node-addon-api 7.1.1 npm
node-fetch 2.7.0 npm
node-pty 1.1.0-beta33 npm
nopt 5.0.0 npm
npm 1.0.1 npm
npmlog 5.0.1 npm
nw-pre-gyp-module-test 0.0.1 npm
object-assign 4.1.1 npm
object-inspect 1.13.4 npm
objective-c 1.0.0 npm
on-finished 2.4.1 npm
on-headers 1.0.2 npm
once 1.4.0 npm (+1 duplicate)
openssh-client 1:9.6p1-3ubuntu13.12 deb
openssl 3.0.13-0ubuntu3.5 deb
opentype.js 0.8.0 npm
os-tmpdir 1.0.2 npm
pac-proxy-agent 7.2.0 npm
pac-resolver 7.0.1 npm
parseurl 1.3.3 npm
passwd 1:4.13+dfsg1-4ubuntu3.2 deb
patch 2.7.6-7build3 deb
path-is-absolute 1.0.1 npm
path-to-regexp 8.2.0 npm
pem 1.14.8 npm
pend 1.2.0 npm
perl 1.0.0 npm
perl 5.38.2-3.2ubuntu0.1 deb
perl-base 5.38.2-3.2ubuntu0.1 deb
perl-modules-5.38 5.38.2-3.2ubuntu0.1 deb
php 1.0.0 npm
php-language-features 1.0.0 npm
picomatch 2.3.1 npm
pinentry-curses 1.2.1-3ubuntu5 deb
powershell 1.0.0 npm
prebuild-install 7.1.2 npm
procps 2:4.0.4-4ubuntu3.2 deb
promise-stream-reader 1.0.1 npm
prompt 1.0.0 npm
proxy-addr 2.0.7 npm
proxy-agent 6.5.0 npm
proxy-from-env 1.1.0 npm (+1 duplicate)
publicsuffix 20231001.0357-0.1 deb
pug 1.0.0 npm
pump 3.0.0 npm
python 1.0.0 npm
qs 6.13.0 npm
qs 6.14.0 npm
r 1.0.0 npm
range-parser 1.2.1 npm
raw-body 3.0.0 npm
razor 1.0.0 npm
rc 1.2.8 npm
readable-stream 3.6.0 npm
readable-stream 3.6.2 npm
readline-common 8.2-4build1 deb
references-view 1.0.0 npm
requires-port 1.0.0 npm
restructuredtext 1.0.0 npm
rimraf 3.0.2 npm
rotating-file-stream 3.2.5 npm
router 2.1.0 npm
ruby 1.0.0 npm
rust 1.0.0 npm
safe-buffer 5.2.1 npm (+1 duplicate)
safe-compare 1.1.4 npm
safer-buffer 2.1.2 npm
scss 1.0.0 npm
search-result 1.0.0 npm
sed 4.9-2build1 deb
semver 6.3.1 npm
semver 7.5.4 npm
semver 7.7.1 npm
send 1.1.0 npm
sensible-utils 0.0.22 deb
serve-static 2.1.0 npm
set-blocking 2.0.0 npm
setprototypeof 1.2.0 npm
shaderlab 1.0.0 npm
shellscript 1.0.0 npm
side-channel 1.1.0 npm
side-channel-list 1.0.0 npm
side-channel-map 1.0.1 npm
side-channel-weakmap 1.0.2 npm
signal-exit 3.0.7 npm
simple-browser 1.0.0 npm
simple-concat 1.0.1 npm
simple-get 4.0.1 npm
smart-buffer 4.2.0 npm (+1 duplicate)
socks 2.8.3 npm
socks 2.8.4 npm
socks-proxy-agent 8.0.4 npm
socks-proxy-agent 8.0.5 npm
source-map 0.6.1 npm
sprintf-js 1.1.3 npm (+1 duplicate)
sql 1.0.0 npm
statuses 2.0.1 npm
string-width 4.2.3 npm
string_decoder 1.3.0 npm (+1 duplicate)
strip-ansi 6.0.1 npm
strip-json-comments 2.0.1 npm
sudo 1.9.15p5-3ubuntu5.24.04.1 deb
swift 1.0.0 npm
systemd-standalone-sysusers 255.4-1ubuntu8.10 deb
sysvinit-utils 3.08-6ubuntu3 deb
tar 1.35+dfsg-3build1 deb
tar 6.2.1 npm
tar-fs 2.1.3 npm
tar-stream 2.2.0 npm
tas-client-umd 0.2.0 npm
terminal-suggest 1.0.1 npm
theme-abyss 1.0.0 npm
theme-defaults 1.0.0 npm
theme-kimbie-dark 1.0.0 npm
theme-monokai 1.0.0 npm
theme-monokai-dimmed 1.0.0 npm
theme-quietlight 1.0.0 npm
theme-red 1.0.0 npm
theme-solarized-dark 1.0.0 npm
theme-solarized-light 1.0.0 npm
theme-tomorrow-night-blue 1.0.0 npm
tiny-inflate 1.0.3 npm
to-regex-range 5.0.1 npm
toidentifier 1.0.1 npm
tr46 0.0.3 npm
tslib 2.7.0 npm
tslib 2.8.1 npm
tunnel-agent 0.6.0 npm
tunnel-forwarding 1.0.0 npm
type-is 2.0.0 npm
typescript 1.0.0 npm
typescript 5.8.3 npm (+1 duplicate)
typescript-language-features 1.0.0 npm
tzdata 2025b-0ubuntu0.24.04.1 deb
ubuntu-keyring 2023.11.28.1 deb
undici 7.9.0 npm
universalify 2.0.1 npm
unminimize 0.2.1 deb
unpipe 1.0.0 npm
util-deprecate 1.0.2 npm (+1 duplicate)
util-linux 2.39.3-9ubuntu6.3 deb
utils-merge 1.0.1 npm
uuid 9.0.1 npm
vary 1.1.2 npm
vb 1.0.0 npm
vscode-css-languageserver 1.0.0 npm
vscode-extensions 0.0.1 npm
vscode-html-languageserver 1.0.0 npm
vscode-js-profile-table 1.0.10 npm
vscode-json-languageserver 1.3.4 npm
vscode-oniguruma 1.7.0 npm
vscode-regexpp 3.1.0 npm
vscode-textmate 9.2.0 npm
vscode-theme-seti 1.0.0 npm
webidl-conversions 3.0.1 npm
whatwg-url 5.0.0 npm
which 2.0.2 npm
wide-align 1.1.5 npm
wrappy 1.0.2 npm (+1 duplicate)
ws 8.18.0 npm
xauth 1:1.1.2-1build1 deb
xdg-basedir 4.0.0 npm
xml 1.0.0 npm
yallist 4.0.0 npm (+1 duplicate)
yaml 1.0.0 npm
yauzl 2.10.0 npm
yauzl 3.1.1 npm
yazl 2.4.3 npm
zlib1g 1:1.3.dfsg-3.1ubuntu2.1 deb

View File

@ -1,132 +0,0 @@
---
# project information
project_name: code-server
project_url: "https://coder.com"
project_logo: "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/code-server-banner.png"
project_blurb: |
[{{ project_name|capitalize }}]({{ project_url }}) is VS Code running on a remote server, accessible through the browser.
- Code on your Chromebook, tablet, and laptop with a consistent dev environment.
- If you have a Windows or Mac workstation, more easily develop for Linux.
- Take advantage of large cloud servers to speed up tests, compilations, downloads, and more.
- Preserve battery life when you're on the go.
- All intensive computation runs on your server.
- You're no longer running excess instances of Chrome.
project_lsio_github_repo_url: "https://github.com/linuxserver/docker-{{ project_name }}"
project_categories: "Programming"
# supported architectures
available_architectures:
- {arch: "{{ arch_x86_64 }}", tag: "amd64-latest"}
- {arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"}
# container parameters
common_param_env_vars_enabled: true
param_container_name: "{{ project_name }}"
param_usage_include_vols: true
param_volumes:
- {vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/config", desc: "Contains all relevant configuration files."}
param_usage_include_ports: true
param_ports:
- {external_port: "8443", internal_port: "8443", port_desc: "web gui"}
# optional container parameters
opt_param_usage_include_env: true
opt_param_env_vars:
- {env_var: "PASSWORD", env_value: "password", desc: "Optional web gui password, if `PASSWORD` or `HASHED_PASSWORD` is not provided, there will be no auth."}
- {env_var: "HASHED_PASSWORD", env_value: "", desc: "Optional web gui password, overrides `PASSWORD`, instructions on how to create it is below."}
- {env_var: "SUDO_PASSWORD", env_value: "password", desc: "If this optional variable is set, user will have sudo access in the code-server terminal with the specified password."}
- {env_var: "SUDO_PASSWORD_HASH", env_value: "", desc: "Optionally set sudo password via hash (takes priority over `SUDO_PASSWORD` var). Format is `$type$salt$hashed`."}
- {env_var: "PROXY_DOMAIN", env_value: "code-server.my.domain", desc: "If this optional variable is set, this domain will be proxied for subdomain proxying. See [Documentation](https://github.com/coder/code-server/blob/main/docs/guide.md#using-a-subdomain)"}
- {env_var: "DEFAULT_WORKSPACE", env_value: "/config/workspace", desc: "If this optional variable is set, code-server will open this directory by default"}
- {env_var: "PWA_APPNAME", env_value: "code-server", desc: "If this optional variable is set, the PWA app will the specified name."}
readonly_supported: true
readonly_message: |
* `/tmp` must be mounted to tmpfs
* `sudo` will not be available
nonroot_supported: true
nonroot_message: |
* `sudo` will not be available
# application setup block
app_setup_block_enabled: true
app_setup_block: |
Access the webui at `http://<your-ip>:8443`.
For github integration, drop your ssh key in to `/config/.ssh`.
Then open a terminal from the top menu and set your github username and email via the following commands
```bash
git config --global user.name "username"
git config --global user.email "email address"
```
### Hashed code-server password
How to create the [hashed password](https://github.com/cdr/code-server/blob/master/docs/FAQ.md#can-i-store-my-password-hashed).
# init diagram
init_diagram: |
"code-server:latest": {
docker-mods
base {
fix-attr +\nlegacy cont-init
}
docker-mods -> base
legacy-services
custom services
init-services -> legacy-services
init-services -> custom services
custom services -> legacy-services
legacy-services -> ci-service-check
init-migrations -> init-adduser
init-config -> init-code-server
init-os-end -> init-config
init-code-server -> init-config-end
init-config -> init-config-end
init-crontab-config -> init-config-end
init-config -> init-crontab-config
init-mods-end -> init-custom-files
init-adduser -> init-device-perms
base -> init-envfile
base -> init-migrations
init-config-end -> init-mods
init-mods-package-install -> init-mods-end
init-mods -> init-mods-package-install
init-adduser -> init-os-end
init-device-perms -> init-os-end
init-envfile -> init-os-end
init-custom-files -> init-services
init-services -> svc-code-server
svc-code-server -> legacy-services
init-services -> svc-cron
svc-cron -> legacy-services
}
Base Images: {
"baseimage-ubuntu:noble"
}
"code-server:latest" <- Base Images
# changelog
changelogs:
- {date: "03.06.25:", desc: "Allow setting PWA name using env var `PWA_APPNAME`."}
- {date: "13.10.24:", desc: "Only chown config folder when change to ownership or new install is detected."}
- {date: "09.10.24:", desc: "Manage permissions in /config/.ssh according to file type"}
- {date: "19.08.24:", desc: "Rebase to Ubuntu Noble."}
- {date: "01.07.23:", desc: "Deprecate armhf. As announced [here](https://www.linuxserver.io/blog/a-farewell-to-arm-hf)"}
- {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: "06.12.21:", desc: "Add `DEFAULT_WORKSPACE` env var."}
- {date: "29.11.21:", desc: "Rebase to Ubuntu focal."}
- {date: "16.09.21:", desc: "Fix slow `chown` on large workspace (contents of workspace folder no longer chowned)."}
- {date: "11.07.21:", desc: "Bump node to 14 to fix builds"}
- {date: "08.05.21:", desc: "Fix doc link"}
- {date: "04.02.20:", desc: "Allow setting gui password via hash using env var `HASHED_PASSWORD`."}
- {date: "23.12.20:", desc: "Allow setting sudo password via hash using env var `SUDO_PASSWORD_HASH`."}
- {date: "29.05.20:", desc: "Add --domain-proxy support."}
- {date: "21.05.20:", desc: "Shrink images, install via yarn, fix arm32v7 build."}
- {date: "18.05.20:", desc: "Switch to multi-arch images, install via npm."}
- {date: "29.04.20:", desc: "Update start arguments."}
- {date: "01.04.20:", desc: "Structural changes required for v3."}
- {date: "17.01.20:", desc: "Fix artifact url retrieval from github."}
- {date: "24.10.19:", desc: "Upgrade to v2 builds."}
- {date: "28.09.19:", desc: "Update project logo."}
- {date: "21.09.19:", desc: "Add development builds/tag."}
- {date: "09.07.19:", desc: "Add optional sudo access."}
- {date: "01.07.19:", desc: "Add nano."}
- {date: "24.06.19:", desc: "Initial Release."}