mirror of
https://github.com/linuxserver/docker-code-server
synced 2025-06-26 18:27:40 +00:00
Compare commits
6 Commits
v3.7.4-ls6
...
v3.8.0-ls6
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
da3a74c36b | ||
|
|
9e43559690 | ||
|
|
d1ece863bc | ||
|
|
ef69b7bed9 | ||
|
|
d1257a0dae | ||
|
|
cdc3aa8171 |
13
.github/ISSUE_TEMPLATE/config.yml
vendored
Executable file
13
.github/ISSUE_TEMPLATE/config.yml
vendored
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
blank_issues_enabled: false
|
||||||
|
contact_links:
|
||||||
|
- name: Discord chat support
|
||||||
|
url: https://discord.gg/YWrKVTn
|
||||||
|
about: Realtime support / chat with the community and the team.
|
||||||
|
|
||||||
|
- name: Discourse discussion forum
|
||||||
|
url: https://discourse.linuxserver.io
|
||||||
|
about: Post on our community forum.
|
||||||
|
|
||||||
|
- name: Documentation
|
||||||
|
url: https://docs.linuxserver.io/images/docker-code-server
|
||||||
|
about: Documentation - information about all of our containers.
|
||||||
10
.github/ISSUE_TEMPLATE.md → .github/ISSUE_TEMPLATE/issue.bug.md
vendored
Normal file → Executable file
10
.github/ISSUE_TEMPLATE.md → .github/ISSUE_TEMPLATE/issue.bug.md
vendored
Normal file → Executable file
@@ -1,12 +1,14 @@
|
|||||||
|
---
|
||||||
|
name: Bug report
|
||||||
|
about: Create a report to help us improve
|
||||||
|
|
||||||
|
---
|
||||||
[linuxserverurl]: https://linuxserver.io
|
[linuxserverurl]: https://linuxserver.io
|
||||||
[][linuxserverurl]
|
[][linuxserverurl]
|
||||||
|
|
||||||
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
|
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
|
||||||
|
|
||||||
<!--- If this acts as a feature request please ask yourself if this modification is something the whole userbase will benefit from --->
|
<!--- Provide a general summary of the bug in the Title above -->
|
||||||
<!--- 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/ -->
|
|
||||||
|
|
||||||
<!--- Provide a general summary of the issue in the Title above -->
|
|
||||||
|
|
||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
25
.github/ISSUE_TEMPLATE/issue.feature.md
vendored
Executable file
25
.github/ISSUE_TEMPLATE/issue.feature.md
vendored
Executable file
@@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
name: Feature request
|
||||||
|
about: Suggest an idea for this project
|
||||||
|
|
||||||
|
---
|
||||||
|
[linuxserverurl]: https://linuxserver.io
|
||||||
|
[][linuxserverurl]
|
||||||
|
|
||||||
|
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
|
||||||
|
|
||||||
|
<!--- If this acts as a feature request please 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/ -->
|
||||||
|
|
||||||
|
<!--- Provide a general summary of the request in the Title above -->
|
||||||
|
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
## Desired Behavior
|
||||||
|
<!--- Tell us what should happen -->
|
||||||
|
|
||||||
|
## Current Behavior
|
||||||
|
<!--- Tell us what happens instead of the expected behavior -->
|
||||||
|
|
||||||
|
## Alternatives Considered
|
||||||
|
<!--- Tell us what other options you have tried or considered -->
|
||||||
1
.github/workflows/external_trigger.yml
vendored
1
.github/workflows/external_trigger.yml
vendored
@@ -27,6 +27,7 @@ jobs:
|
|||||||
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
|
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
EXT_RELEASE=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g')
|
||||||
echo "**** External version: ${EXT_RELEASE} ****"
|
echo "**** External version: ${EXT_RELEASE} ****"
|
||||||
echo "**** Retrieving last pushed version ****"
|
echo "**** Retrieving last pushed version ****"
|
||||||
image="linuxserver/code-server"
|
image="linuxserver/code-server"
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2.3.3
|
- uses: actions/checkout@v2.3.3
|
||||||
with:
|
with:
|
||||||
fetch-depth: '0'
|
fetch-depth: '0'
|
||||||
|
|
||||||
- name: External Trigger Scheduler
|
- name: External Trigger Scheduler
|
||||||
run: |
|
run: |
|
||||||
echo "**** Branches found: ****"
|
echo "**** Branches found: ****"
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2.3.3
|
- uses: actions/checkout@v2.3.3
|
||||||
with:
|
with:
|
||||||
fetch-depth: '0'
|
fetch-depth: '0'
|
||||||
|
|
||||||
- name: Package Trigger Scheduler
|
- name: Package Trigger Scheduler
|
||||||
run: |
|
run: |
|
||||||
echo "**** Branches found: ****"
|
echo "**** Branches found: ****"
|
||||||
|
|||||||
46
Jenkinsfile
vendored
46
Jenkinsfile
vendored
@@ -58,7 +58,7 @@ pipeline {
|
|||||||
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT
|
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT
|
||||||
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
|
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
|
||||||
env.PULL_REQUEST = env.CHANGE_ID
|
env.PULL_REQUEST = env.CHANGE_ID
|
||||||
env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/greetings.yml ./.github/workflows/stale.yml'
|
env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.md ./.github/ISSUE_TEMPLATE/issue.feature.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/greetings.yml ./.github/workflows/stale.yml ./.github/workflows/package_trigger.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/external_trigger.yml ./.github/workflows/external_trigger_scheduler.yml'
|
||||||
}
|
}
|
||||||
script{
|
script{
|
||||||
env.LS_RELEASE_NUMBER = sh(
|
env.LS_RELEASE_NUMBER = sh(
|
||||||
@@ -145,6 +145,7 @@ pipeline {
|
|||||||
} else {
|
} else {
|
||||||
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||||
}
|
}
|
||||||
|
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||||
env.META_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
env.META_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||||
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
||||||
}
|
}
|
||||||
@@ -166,6 +167,7 @@ pipeline {
|
|||||||
} else {
|
} else {
|
||||||
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||||
}
|
}
|
||||||
|
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||||
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
||||||
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
||||||
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DEV_DOCKERHUB_IMAGE + '/tags/'
|
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DEV_DOCKERHUB_IMAGE + '/tags/'
|
||||||
@@ -187,6 +189,7 @@ pipeline {
|
|||||||
} else {
|
} else {
|
||||||
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
|
env.CI_TAGS = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
|
||||||
}
|
}
|
||||||
|
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
|
||||||
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
|
env.META_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
|
||||||
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
|
||||||
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/pull/' + env.PULL_REQUEST
|
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/pull/' + env.PULL_REQUEST
|
||||||
@@ -248,9 +251,12 @@ pipeline {
|
|||||||
git checkout -f master
|
git checkout -f master
|
||||||
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||||
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
|
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
|
||||||
cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/
|
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE
|
||||||
|
rm -f ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE.md
|
||||||
|
cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/ || :
|
||||||
cd ${TEMPDIR}/repo/${LS_REPO}/
|
cd ${TEMPDIR}/repo/${LS_REPO}/
|
||||||
git add ${TEMPLATED_FILES}
|
git add ${TEMPLATED_FILES}
|
||||||
|
git rm .github/ISSUE_TEMPLATE.md || :
|
||||||
git commit -m 'Bot Updating Templated Files'
|
git commit -m 'Bot Updating Templated Files'
|
||||||
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
|
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
|
||||||
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
|
||||||
@@ -320,8 +326,9 @@ pipeline {
|
|||||||
environment name: 'EXIT_STATUS', value: ''
|
environment name: 'EXIT_STATUS', value: ''
|
||||||
}
|
}
|
||||||
steps {
|
steps {
|
||||||
|
echo "Running on node: ${NODE_NAME}"
|
||||||
sh "docker build --no-cache --pull -t ${IMAGE}:${META_TAG} \
|
sh "docker build --no-cache --pull -t ${IMAGE}:${META_TAG} \
|
||||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Build MultiArch Docker containers for push to LS Repo
|
// Build MultiArch Docker containers for push to LS Repo
|
||||||
@@ -333,8 +340,9 @@ pipeline {
|
|||||||
parallel {
|
parallel {
|
||||||
stage('Build X86') {
|
stage('Build X86') {
|
||||||
steps {
|
steps {
|
||||||
|
echo "Running on node: ${NODE_NAME}"
|
||||||
sh "docker build --no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \
|
sh "docker build --no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \
|
||||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Build ARMHF') {
|
stage('Build ARMHF') {
|
||||||
@@ -342,12 +350,13 @@ pipeline {
|
|||||||
label 'ARMHF'
|
label 'ARMHF'
|
||||||
}
|
}
|
||||||
steps {
|
steps {
|
||||||
|
echo "Running on node: ${NODE_NAME}"
|
||||||
echo 'Logging into Github'
|
echo 'Logging into Github'
|
||||||
sh '''#! /bin/bash
|
sh '''#! /bin/bash
|
||||||
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
|
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
|
||||||
'''
|
'''
|
||||||
sh "docker build --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
|
sh "docker build --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
|
||||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||||
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||||
retry(5) {
|
retry(5) {
|
||||||
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||||
@@ -362,12 +371,13 @@ pipeline {
|
|||||||
label 'ARM64'
|
label 'ARM64'
|
||||||
}
|
}
|
||||||
steps {
|
steps {
|
||||||
|
echo "Running on node: ${NODE_NAME}"
|
||||||
echo 'Logging into Github'
|
echo 'Logging into Github'
|
||||||
sh '''#! /bin/bash
|
sh '''#! /bin/bash
|
||||||
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
|
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
|
||||||
'''
|
'''
|
||||||
sh "docker build --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
|
sh "docker build --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
|
||||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||||
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||||
retry(5) {
|
retry(5) {
|
||||||
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||||
@@ -440,6 +450,13 @@ pipeline {
|
|||||||
environment name: 'EXIT_STATUS', value: ''
|
environment name: 'EXIT_STATUS', value: ''
|
||||||
}
|
}
|
||||||
steps {
|
steps {
|
||||||
|
sh '''#! /bin/bash
|
||||||
|
echo "Packages were updated. Cleaning up the image and exiting."
|
||||||
|
if [ "${MULTIARCH}" == "true" ]; then
|
||||||
|
docker rmi ${IMAGE}:amd64-${META_TAG}
|
||||||
|
else
|
||||||
|
docker rmi ${IMAGE}:${META_TAG}
|
||||||
|
fi'''
|
||||||
script{
|
script{
|
||||||
env.EXIT_STATUS = 'ABORTED'
|
env.EXIT_STATUS = 'ABORTED'
|
||||||
}
|
}
|
||||||
@@ -457,6 +474,13 @@ pipeline {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
steps {
|
steps {
|
||||||
|
sh '''#! /bin/bash
|
||||||
|
echo "There are no package updates. Cleaning up the image and exiting."
|
||||||
|
if [ "${MULTIARCH}" == "true" ]; then
|
||||||
|
docker rmi ${IMAGE}:amd64-${META_TAG}
|
||||||
|
else
|
||||||
|
docker rmi ${IMAGE}:${META_TAG}
|
||||||
|
fi'''
|
||||||
script{
|
script{
|
||||||
env.EXIT_STATUS = 'ABORTED'
|
env.EXIT_STATUS = 'ABORTED'
|
||||||
}
|
}
|
||||||
@@ -546,7 +570,7 @@ pipeline {
|
|||||||
'''
|
'''
|
||||||
}
|
}
|
||||||
sh '''#! /bin/bash
|
sh '''#! /bin/bash
|
||||||
for DELETEIMAGE in "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
|
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
|
||||||
docker rmi \
|
docker rmi \
|
||||||
${DELETEIMAGE}:${META_TAG} \
|
${DELETEIMAGE}:${META_TAG} \
|
||||||
${DELETEIMAGE}:${EXT_RELEASE_TAG} \
|
${DELETEIMAGE}:${EXT_RELEASE_TAG} \
|
||||||
@@ -610,6 +634,7 @@ pipeline {
|
|||||||
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||||
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
|
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
|
||||||
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
||||||
|
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} || :
|
||||||
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
||||||
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} --os linux --arch arm
|
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} --os linux --arch arm
|
||||||
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
|
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
|
||||||
@@ -624,10 +649,13 @@ pipeline {
|
|||||||
docker rmi \
|
docker rmi \
|
||||||
${DELETEIMAGE}:amd64-${META_TAG} \
|
${DELETEIMAGE}:amd64-${META_TAG} \
|
||||||
${DELETEIMAGE}:amd64-latest \
|
${DELETEIMAGE}:amd64-latest \
|
||||||
|
${DELETEIMAGE}:amd64-${EXT_RELEASE_TAG} \
|
||||||
${DELETEIMAGE}:arm32v7-${META_TAG} \
|
${DELETEIMAGE}:arm32v7-${META_TAG} \
|
||||||
${DELETEIMAGE}:arm32v7-latest \
|
${DELETEIMAGE}:arm32v7-latest \
|
||||||
|
${DELETEIMAGE}:arm32v7-${EXT_RELEASE_TAG} \
|
||||||
${DELETEIMAGE}:arm64v8-${META_TAG} \
|
${DELETEIMAGE}:arm64v8-${META_TAG} \
|
||||||
${DELETEIMAGE}:arm64v8-latest || :
|
${DELETEIMAGE}:arm64v8-latest \
|
||||||
|
${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} || :
|
||||||
done
|
done
|
||||||
docker rmi \
|
docker rmi \
|
||||||
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
|
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
|
||||||
@@ -694,7 +722,7 @@ pipeline {
|
|||||||
-e DOCKER_REPOSITORY=${IMAGE} \
|
-e DOCKER_REPOSITORY=${IMAGE} \
|
||||||
-e GIT_BRANCH=master \
|
-e GIT_BRANCH=master \
|
||||||
-v ${TEMPDIR}/docker-${CONTAINER_NAME}:/mnt \
|
-v ${TEMPDIR}/docker-${CONTAINER_NAME}:/mnt \
|
||||||
ghcr.io/linuxserver/lsiodev-readme-sync bash -c 'node sync'
|
ghcr.io/linuxserver/lsiodev-readme-sync bash -c 'node sync'
|
||||||
rm -Rf ${TEMPDIR} '''
|
rm -Rf ${TEMPDIR} '''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ Find us at:
|
|||||||
[](https://github.com/linuxserver/docker-code-server)
|
[](https://github.com/linuxserver/docker-code-server)
|
||||||
[](https://github.com/linuxserver/docker-code-server/releases)
|
[](https://github.com/linuxserver/docker-code-server/releases)
|
||||||
[](https://github.com/linuxserver/docker-code-server/packages)
|
[](https://github.com/linuxserver/docker-code-server/packages)
|
||||||
[](https://gitlab.com/Linuxserver.io/docker-code-server/container_registry)
|
[](https://gitlab.com/linuxserver.io/docker-code-server/container_registry)
|
||||||
[](https://microbadger.com/images/linuxserver/code-server "Get your own version badge on microbadger.com")
|
[](https://microbadger.com/images/linuxserver/code-server "Get your own version badge on microbadger.com")
|
||||||
[](https://hub.docker.com/r/linuxserver/code-server)
|
[](https://hub.docker.com/r/linuxserver/code-server)
|
||||||
[](https://hub.docker.com/r/linuxserver/code-server)
|
[](https://hub.docker.com/r/linuxserver/code-server)
|
||||||
@@ -92,6 +92,7 @@ services:
|
|||||||
- TZ=Europe/London
|
- TZ=Europe/London
|
||||||
- PASSWORD=password #optional
|
- PASSWORD=password #optional
|
||||||
- SUDO_PASSWORD=password #optional
|
- SUDO_PASSWORD=password #optional
|
||||||
|
- SUDO_PASSWORD_HASH= #optional
|
||||||
- PROXY_DOMAIN=code-server.my.domain #optional
|
- PROXY_DOMAIN=code-server.my.domain #optional
|
||||||
volumes:
|
volumes:
|
||||||
- /path/to/appdata/config:/config
|
- /path/to/appdata/config:/config
|
||||||
@@ -110,6 +111,7 @@ docker run -d \
|
|||||||
-e TZ=Europe/London \
|
-e TZ=Europe/London \
|
||||||
-e PASSWORD=password `#optional` \
|
-e PASSWORD=password `#optional` \
|
||||||
-e SUDO_PASSWORD=password `#optional` \
|
-e SUDO_PASSWORD=password `#optional` \
|
||||||
|
-e SUDO_PASSWORD_HASH= `#optional` \
|
||||||
-e PROXY_DOMAIN=code-server.my.domain `#optional` \
|
-e PROXY_DOMAIN=code-server.my.domain `#optional` \
|
||||||
-p 8443:8443 \
|
-p 8443:8443 \
|
||||||
-v /path/to/appdata/config:/config \
|
-v /path/to/appdata/config:/config \
|
||||||
@@ -130,6 +132,7 @@ Container images are configured using parameters passed at runtime (such as thos
|
|||||||
| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London |
|
| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London |
|
||||||
| `-e PASSWORD=password` | Optional web gui password, if not provided, there will be no auth. |
|
| `-e PASSWORD=password` | Optional web gui password, if not provided, there will be no auth. |
|
||||||
| `-e SUDO_PASSWORD=password` | If this optional variable is set, user will have sudo access in the code-server terminal with the specified password. |
|
| `-e SUDO_PASSWORD=password` | If this optional variable is set, user will have sudo access in the code-server terminal with the specified password. |
|
||||||
|
| `-e SUDO_PASSWORD_HASH=` | Optionally set sudo password via hash (takes priority over `SUDO_PASSWORD` var). Format is `$type$salt$hashed`. |
|
||||||
| `-e PROXY_DOMAIN=code-server.my.domain` | If this optional variable is set, this domain will be proxied for subdomain proxying. See [Documentation](https://github.com/cdr/code-server/blob/master/doc/FAQ.md#sub-domains) |
|
| `-e PROXY_DOMAIN=code-server.my.domain` | If this optional variable is set, this domain will be proxied for subdomain proxying. See [Documentation](https://github.com/cdr/code-server/blob/master/doc/FAQ.md#sub-domains) |
|
||||||
| `-v /config` | Contains all relevant configuration files. |
|
| `-v /config` | Contains all relevant configuration files. |
|
||||||
|
|
||||||
@@ -247,6 +250,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
|
|||||||
|
|
||||||
## Versions
|
## Versions
|
||||||
|
|
||||||
|
* **23.12.20:** - Allow setting sudo password via hash using env var `SUDO_PASSWORD_HASH`.
|
||||||
* **29.05.20:** - Add --domain-proxy support.
|
* **29.05.20:** - Add --domain-proxy support.
|
||||||
* **21.05.20:** - Shrink images, install via yarn, fix arm32v7 build.
|
* **21.05.20:** - Shrink images, install via yarn, fix arm32v7 build.
|
||||||
* **18.05.20:** - Switch to multi-arch images, install via npm.
|
* **18.05.20:** - Switch to multi-arch images, install via npm.
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
adduser3.116ubuntu1
|
adduser3.116ubuntu1
|
||||||
apt1.6.12ubuntu0.1
|
apt1.6.12ubuntu0.2
|
||||||
apt-utils1.6.12ubuntu0.1
|
apt-utils1.6.12ubuntu0.2
|
||||||
base-files10.1ubuntu2.10
|
base-files10.1ubuntu2.10
|
||||||
base-passwd3.5.44
|
base-passwd3.5.44
|
||||||
bash4.4.18-2ubuntu1.2
|
bash4.4.18-2ubuntu1.2
|
||||||
@@ -8,7 +8,7 @@ bsdutils1:2.31.1-0.4ubuntu3.7
|
|||||||
bzip21.0.6-8.1ubuntu0.2
|
bzip21.0.6-8.1ubuntu0.2
|
||||||
ca-certificates20201027ubuntu0.18.04.1
|
ca-certificates20201027ubuntu0.18.04.1
|
||||||
coreutils8.28-1ubuntu1
|
coreutils8.28-1ubuntu1
|
||||||
curl7.58.0-2ubuntu3.10
|
curl7.58.0-2ubuntu3.12
|
||||||
dash0.5.8-2.10
|
dash0.5.8-2.10
|
||||||
debconf1.5.66ubuntu1
|
debconf1.5.66ubuntu1
|
||||||
debianutils4.8.4
|
debianutils4.8.4
|
||||||
@@ -40,8 +40,8 @@ jq1.5+dfsg-2
|
|||||||
krb5-locales1.16-2ubuntu0.2
|
krb5-locales1.16-2ubuntu0.2
|
||||||
less487-0.1
|
less487-0.1
|
||||||
libacl12.2.52-3build1
|
libacl12.2.52-3build1
|
||||||
libapt-inst2.01.6.12ubuntu0.1
|
libapt-inst2.01.6.12ubuntu0.2
|
||||||
libapt-pkg5.01.6.12ubuntu0.1
|
libapt-pkg5.01.6.12ubuntu0.2
|
||||||
libasn1-8-heimdal7.5.0+dfsg-1
|
libasn1-8-heimdal7.5.0+dfsg-1
|
||||||
libassuan02.5.1-2
|
libassuan02.5.1-2
|
||||||
libattr11:2.4.47-2build1
|
libattr11:2.4.47-2build1
|
||||||
@@ -50,12 +50,12 @@ libaudit-common1:2.8.2-1ubuntu1
|
|||||||
libblkid12.31.1-0.4ubuntu3.7
|
libblkid12.31.1-0.4ubuntu3.7
|
||||||
libbsd00.8.7-1ubuntu0.1
|
libbsd00.8.7-1ubuntu0.1
|
||||||
libbz2-1.01.0.6-8.1ubuntu0.2
|
libbz2-1.01.0.6-8.1ubuntu0.2
|
||||||
libc62.27-3ubuntu1.3
|
libc62.27-3ubuntu1.4
|
||||||
libcap-ng00.7.7-3.1
|
libcap-ng00.7.7-3.1
|
||||||
libc-bin2.27-3ubuntu1.2
|
libc-bin2.27-3ubuntu1.2
|
||||||
libcom-err21.44.1-1ubuntu1.3
|
libcom-err21.44.1-1ubuntu1.3
|
||||||
libcurl3-gnutls7.58.0-2ubuntu3.10
|
libcurl3-gnutls7.58.0-2ubuntu3.12
|
||||||
libcurl47.58.0-2ubuntu3.10
|
libcurl47.58.0-2ubuntu3.12
|
||||||
libdb5.35.3.28-13.1ubuntu1.1
|
libdb5.35.3.28-13.1ubuntu1.1
|
||||||
libdebconfclient00.213ubuntu1
|
libdebconfclient00.213ubuntu1
|
||||||
libedit23.1-20170329-1
|
libedit23.1-20170329-1
|
||||||
@@ -125,8 +125,8 @@ libsepol12.7-1
|
|||||||
libsmartcols12.31.1-0.4ubuntu3.7
|
libsmartcols12.31.1-0.4ubuntu3.7
|
||||||
libsqlite3-03.22.0-1ubuntu0.4
|
libsqlite3-03.22.0-1ubuntu0.4
|
||||||
libss21.44.1-1ubuntu1.3
|
libss21.44.1-1ubuntu1.3
|
||||||
libssl1.0.01.0.2n-1ubuntu5.4
|
libssl1.0.01.0.2n-1ubuntu5.5
|
||||||
libssl1.11.1.1-1ubuntu2.1~18.04.6
|
libssl1.11.1.1-1ubuntu2.1~18.04.7
|
||||||
libstdc++68.4.0-1ubuntu1~18.04
|
libstdc++68.4.0-1ubuntu1~18.04
|
||||||
libsystemd0237-3ubuntu10.42
|
libsystemd0237-3ubuntu10.42
|
||||||
libtasn1-64.13-2
|
libtasn1-64.13-2
|
||||||
@@ -143,13 +143,13 @@ libxdmcp61:1.1.2-3
|
|||||||
libxext62:1.3.3-1
|
libxext62:1.3.3-1
|
||||||
libxmuu12:1.1.2-2
|
libxmuu12:1.1.2-2
|
||||||
libzstd11.3.3+dfsg-2ubuntu1.1
|
libzstd11.3.3+dfsg-2ubuntu1.1
|
||||||
locales2.27-3ubuntu1.3
|
locales2.27-3ubuntu1.4
|
||||||
login1:4.5-1ubuntu2
|
login1:4.5-1ubuntu2
|
||||||
lsb-base9.20170808ubuntu1
|
lsb-base9.20170808ubuntu1
|
||||||
mawk1.3.3-17ubuntu3
|
mawk1.3.3-17ubuntu3
|
||||||
mime-support3.60ubuntu1
|
mime-support3.60ubuntu1
|
||||||
mount2.31.1-0.4ubuntu3.7
|
mount2.31.1-0.4ubuntu3.7
|
||||||
multiarch-support2.27-3ubuntu1.3
|
multiarch-support2.27-3ubuntu1.4
|
||||||
nano2.9.3-2
|
nano2.9.3-2
|
||||||
ncurses-base6.1-1ubuntu1.18.04
|
ncurses-base6.1-1ubuntu1.18.04
|
||||||
ncurses-bin6.1-1ubuntu1.18.04
|
ncurses-bin6.1-1ubuntu1.18.04
|
||||||
@@ -157,7 +157,7 @@ netbase5.4
|
|||||||
net-tools1.60+git20161116.90da8a0-1ubuntu1
|
net-tools1.60+git20161116.90da8a0-1ubuntu1
|
||||||
nodejs12.20.0-1nodesource1
|
nodejs12.20.0-1nodesource1
|
||||||
openssh-client1:7.6p1-4ubuntu0.3
|
openssh-client1:7.6p1-4ubuntu0.3
|
||||||
openssl1.1.1-1ubuntu2.1~18.04.6
|
openssl1.1.1-1ubuntu2.1~18.04.7
|
||||||
passwd1:4.5-1ubuntu2
|
passwd1:4.5-1ubuntu2
|
||||||
patch2.7.6-2ubuntu1.1
|
patch2.7.6-2ubuntu1.1
|
||||||
perl5.26.1-6ubuntu0.5
|
perl5.26.1-6ubuntu0.5
|
||||||
|
|||||||
@@ -42,13 +42,14 @@ param_ports:
|
|||||||
- { external_port: "8443", internal_port: "8443", port_desc: "web gui" }
|
- { external_port: "8443", internal_port: "8443", port_desc: "web gui" }
|
||||||
param_usage_include_env: true
|
param_usage_include_env: true
|
||||||
param_env_vars:
|
param_env_vars:
|
||||||
- { env_var: "TZ", env_value: "Europe/London", desc: "Specify a timezone to use EG Europe/London"}
|
- { env_var: "TZ", env_value: "Europe/London", desc: "Specify a timezone to use EG Europe/London" }
|
||||||
|
|
||||||
# optional container parameters
|
# optional container parameters
|
||||||
opt_param_usage_include_env: true
|
opt_param_usage_include_env: true
|
||||||
opt_param_env_vars:
|
opt_param_env_vars:
|
||||||
- { env_var: "PASSWORD", env_value: "password", desc: "Optional web gui password, if not provided, there will be no auth."}
|
- { env_var: "PASSWORD", env_value: "password", desc: "Optional web gui password, if not provided, there will be no auth." }
|
||||||
- { 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", 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/cdr/code-server/blob/master/doc/FAQ.md#sub-domains)" }
|
- { 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/cdr/code-server/blob/master/doc/FAQ.md#sub-domains)" }
|
||||||
|
|
||||||
optional_block_1: false
|
optional_block_1: false
|
||||||
@@ -68,7 +69,8 @@ app_setup_block: |
|
|||||||
|
|
||||||
# changelog
|
# changelog
|
||||||
changelogs:
|
changelogs:
|
||||||
- { date: "29.05.20:", desc: "Add --domain-proxy support."}
|
- { 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: "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: "18.05.20:", desc: "Switch to multi-arch images, install via npm." }
|
||||||
- { date: "29.04.20:", desc: "Update start arguments." }
|
- { date: "29.04.20:", desc: "Update start arguments." }
|
||||||
|
|||||||
@@ -2,14 +2,19 @@
|
|||||||
|
|
||||||
mkdir -p /config/{extensions,data,workspace,.ssh}
|
mkdir -p /config/{extensions,data,workspace,.ssh}
|
||||||
|
|
||||||
if [ -n "${SUDO_PASSWORD}" ]; then
|
if [ -n "${SUDO_PASSWORD}" ] || [ -n "${SUDO_PASSWORD_HASH}" ]; then
|
||||||
echo "setting up sudo access"
|
echo "setting up sudo access"
|
||||||
if ! grep -q 'abc' /etc/sudoers; then
|
if ! grep -q 'abc' /etc/sudoers; then
|
||||||
echo "adding abc to sudoers"
|
echo "adding abc to sudoers"
|
||||||
echo "abc ALL=(ALL:ALL) ALL" >> /etc/sudoers
|
echo "abc ALL=(ALL:ALL) ALL" >> /etc/sudoers
|
||||||
fi
|
fi
|
||||||
echo "setting sudo password"
|
if [ -n "${SUDO_PASSWORD_HASH}" ]; then
|
||||||
echo -e "${SUDO_PASSWORD}\n${SUDO_PASSWORD}" | passwd abc
|
echo "setting sudo password using sudo password hash"
|
||||||
|
sed -i "s|^abc:\!:|abc:${SUDO_PASSWORD_HASH}:|" /etc/shadow
|
||||||
|
else
|
||||||
|
echo "setting sudo password using SUDO_PASSWORD env var"
|
||||||
|
echo -e "${SUDO_PASSWORD}\n${SUDO_PASSWORD}" | passwd abc
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# permissions
|
# permissions
|
||||||
|
|||||||
Reference in New Issue
Block a user