Compare commits

..

17 Commits

Author SHA1 Message Date
LinuxServer-CI
e402cc2e16 Bot Updating Templated Files 2020-05-29 17:51:28 +00:00
aptalca
00afdeb441 Merge pull request #30 from n-i-x/n-i-x-patch-1
Add support for --proxy-domain
2020-05-29 13:50:10 -04:00
n-i-x
08841b0f51 Remove docker-compose vars 2020-05-29 11:50:49 -04:00
n-i-x
54d481ef55 move readme stuff into readme-vars 2020-05-29 11:38:41 -04:00
jrebey
d413b7d2a6 remove weird code-server: 2020-05-29 10:26:24 -04:00
jrebey
2edc59783f editor set to spaces not tabs :/ 2020-05-29 10:25:32 -04:00
jrebey
af00f6d309 remove golang mod PATH 2020-05-29 10:24:32 -04:00
jrebey
2b8da35c3b Merge remote-tracking branch 'upstream/master' into n-i-x-patch-1 2020-05-29 10:22:03 -04:00
LinuxServer-CI
b456c30f0c Bot Updating Package Versions 2020-05-28 19:53:29 +00:00
LinuxServer-CI
babc486031 Bot Updating Templated Files 2020-05-28 19:44:11 +00:00
LinuxServer-CI
b64f2d360c Bot Updating Package Versions 2020-05-28 10:36:17 +00:00
LinuxServer-CI
98569fb679 Bot Updating Package Versions 2020-05-21 22:28:33 +02:00
aptalca
7fb25d3ff4 Merge pull request #32 from linuxserver/yarn
shrink image, install via yarn, fix arm build
2020-05-21 16:12:26 -04:00
aptalca
0b97beb8db shrink image, install via yarn, fix arm build 2020-05-21 15:30:45 -04:00
n-i-x
9ae8d18bd2 Update readme-vars.yml 2020-05-19 23:16:37 -04:00
n-i-x
f2c46c0e0d Add --proxy-domain documentation 2020-05-19 23:12:42 -04:00
n-i-x
eb7eaa456a Add --proxy-domain support 2020-05-19 23:06:47 -04:00
8 changed files with 84 additions and 65 deletions

View File

@@ -18,6 +18,9 @@ RUN \
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
echo 'deb https://deb.nodesource.com/node_12.x bionic main' \ echo 'deb https://deb.nodesource.com/node_12.x bionic main' \
> /etc/apt/sources.list.d/nodesource.list && \ > /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 ****" && \ echo "**** install build dependencies ****" && \
apt-get update && \ apt-get update && \
apt-get install -y \ apt-get install -y \
@@ -33,14 +36,17 @@ RUN \
nano \ nano \
net-tools \ net-tools \
nodejs \ nodejs \
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://api.github.com/repos/cdr/code-server/releases/latest" \ CODE_RELEASE=$(curl -sX GET "https://api.github.com/repos/cdr/code-server/releases/latest" \
| awk '/tag_name/{print $4;exit}' FS='[""]'); \ | awk '/tag_name/{print $4;exit}' FS='[""]'); \
fi && \ fi && \
CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \ CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \
npm install --unsafe-perm -g code-server@"$CODE_VERSION" && \ yarn --production global add code-server@"$CODE_VERSION" && \
yarn cache clean && \
ln -s /node_modules/.bin/code-server /usr/bin/code-server && \
echo "**** clean up ****" && \ echo "**** clean up ****" && \
apt-get purge --auto-remove -y \ apt-get purge --auto-remove -y \
build-essential \ build-essential \

View File

@@ -18,6 +18,9 @@ RUN \
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
echo 'deb https://deb.nodesource.com/node_12.x bionic main' \ echo 'deb https://deb.nodesource.com/node_12.x bionic main' \
> /etc/apt/sources.list.d/nodesource.list && \ > /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 ****" && \ echo "**** install build dependencies ****" && \
apt-get update && \ apt-get update && \
apt-get install -y \ apt-get install -y \
@@ -33,14 +36,17 @@ RUN \
nano \ nano \
net-tools \ net-tools \
nodejs \ nodejs \
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://api.github.com/repos/cdr/code-server/releases/latest" \ CODE_RELEASE=$(curl -sX GET "https://api.github.com/repos/cdr/code-server/releases/latest" \
| awk '/tag_name/{print $4;exit}' FS='[""]'); \ | awk '/tag_name/{print $4;exit}' FS='[""]'); \
fi && \ fi && \
CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \ CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \
npm install --unsafe-perm -g code-server@"$CODE_VERSION" && \ yarn --production global add code-server@"$CODE_VERSION" && \
yarn cache clean && \
ln -s /node_modules/.bin/code-server /usr/bin/code-server && \
echo "**** clean up ****" && \ echo "**** clean up ****" && \
apt-get purge --auto-remove -y \ apt-get purge --auto-remove -y \
build-essential \ build-essential \

View File

@@ -18,6 +18,9 @@ RUN \
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
echo 'deb https://deb.nodesource.com/node_12.x bionic main' \ echo 'deb https://deb.nodesource.com/node_12.x bionic main' \
> /etc/apt/sources.list.d/nodesource.list && \ > /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 ****" && \ echo "**** install build dependencies ****" && \
apt-get update && \ apt-get update && \
apt-get install -y \ apt-get install -y \
@@ -33,14 +36,17 @@ RUN \
nano \ nano \
net-tools \ net-tools \
nodejs \ nodejs \
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://api.github.com/repos/cdr/code-server/releases/latest" \ CODE_RELEASE=$(curl -sX GET "https://api.github.com/repos/cdr/code-server/releases/latest" \
| awk '/tag_name/{print $4;exit}' FS='[""]'); \ | awk '/tag_name/{print $4;exit}' FS='[""]'); \
fi && \ fi && \
CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \ CODE_VERSION=$(echo "$CODE_RELEASE" | awk '{print substr($1,2); }') && \
npm install --unsafe-perm -g code-server@"$CODE_VERSION" && \ yarn --production global add code-server@"$CODE_VERSION" && \
yarn cache clean && \
ln -s /node_modules/.bin/code-server /usr/bin/code-server && \
echo "**** clean up ****" && \ echo "**** clean up ****" && \
apt-get purge --auto-remove -y \ apt-get purge --auto-remove -y \
build-essential \ build-essential \

53
Jenkinsfile vendored
View File

@@ -138,7 +138,6 @@ pipeline {
steps { steps {
script{ script{
env.IMAGE = env.DOCKERHUB_IMAGE env.IMAGE = env.DOCKERHUB_IMAGE
env.QUAYIMAGE = 'quay.io/linuxserver.io/' + env.CONTAINER_NAME
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/' + env.CONTAINER_NAME env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/' + env.CONTAINER_NAME
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') { if (env.MULTIARCH == 'true') {
@@ -159,7 +158,6 @@ pipeline {
steps { steps {
script{ script{
env.IMAGE = env.DEV_DOCKERHUB_IMAGE env.IMAGE = env.DEV_DOCKERHUB_IMAGE
env.QUAYIMAGE = 'quay.io/linuxserver.io/lsiodev-' + env.CONTAINER_NAME
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') { if (env.MULTIARCH == 'true') {
@@ -180,7 +178,6 @@ pipeline {
steps { steps {
script{ script{
env.IMAGE = env.PR_DOCKERHUB_IMAGE env.IMAGE = env.PR_DOCKERHUB_IMAGE
env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME env.GITHUBIMAGE = 'docker.pkg.github.com/' + env.LS_USER + '/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') { if (env.MULTIARCH == 'true') {
@@ -545,22 +542,15 @@ pipeline {
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207', credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER', usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS' passwordVariable: 'DOCKERPASS'
],
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
] ]
]) { ]) {
retry(5) { retry(5) {
sh '''#! /bin/bash sh '''#! /bin/bash
set -e set -e
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG} docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
docker push ${PUSHIMAGE}:latest docker push ${PUSHIMAGE}:latest
@@ -569,7 +559,7 @@ pipeline {
''' '''
} }
sh '''#! /bin/bash sh '''#! /bin/bash
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do for DELETEIMAGE in "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
docker rmi \ docker rmi \
${DELETEIMAGE}:${META_TAG} \ ${DELETEIMAGE}:${META_TAG} \
${DELETEIMAGE}:latest || : ${DELETEIMAGE}:latest || :
@@ -591,18 +581,11 @@ pipeline {
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207', credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER', usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS' passwordVariable: 'DOCKERPASS'
],
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
] ]
]) { ]) {
retry(5) { retry(5) {
sh '''#! /bin/bash sh '''#! /bin/bash
set -e set -e
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
@@ -636,26 +619,24 @@ pipeline {
docker manifest push --purge ${MANIFESTIMAGE}:latest docker manifest push --purge ${MANIFESTIMAGE}:latest
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
done done
for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do docker tag ${IMAGE}:amd64-${META_TAG} ${GITHUBIMAGE}:amd64-${META_TAG}
docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG} docker tag ${IMAGE}:arm32v7-${META_TAG} ${GITHUBIMAGE}:arm32v7-${META_TAG}
docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG} docker tag ${IMAGE}:arm64v8-${META_TAG} ${GITHUBIMAGE}:arm64v8-${META_TAG}
docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG} docker tag ${GITHUBIMAGE}:amd64-${META_TAG} ${GITHUBIMAGE}:latest
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest docker tag ${GITHUBIMAGE}:amd64-${META_TAG} ${GITHUBIMAGE}:${META_TAG}
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG} docker tag ${GITHUBIMAGE}:arm32v7-${META_TAG} ${GITHUBIMAGE}:arm32v7-latest
docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest docker tag ${GITHUBIMAGE}:arm64v8-${META_TAG} ${GITHUBIMAGE}:arm64v8-latest
docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest docker push ${GITHUBIMAGE}:amd64-${META_TAG}
docker push ${LEGACYIMAGE}:amd64-${META_TAG} docker push ${GITHUBIMAGE}:arm32v7-${META_TAG}
docker push ${LEGACYIMAGE}:arm32v7-${META_TAG} docker push ${GITHUBIMAGE}:arm64v8-${META_TAG}
docker push ${LEGACYIMAGE}:arm64v8-${META_TAG} docker push ${GITHUBIMAGE}:latest
docker push ${LEGACYIMAGE}:latest docker push ${GITHUBIMAGE}:${META_TAG}
docker push ${LEGACYIMAGE}:${META_TAG} docker push ${GITHUBIMAGE}:arm32v7-latest
docker push ${LEGACYIMAGE}:arm32v7-latest docker push ${GITHUBIMAGE}:arm64v8-latest
docker push ${LEGACYIMAGE}:arm64v8-latest
done
''' '''
} }
sh '''#! /bin/bash sh '''#! /bin/bash
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
docker rmi \ docker rmi \
${DELETEIMAGE}:amd64-${META_TAG} \ ${DELETEIMAGE}:amd64-${META_TAG} \
${DELETEIMAGE}:amd64-latest \ ${DELETEIMAGE}:amd64-latest \

View File

@@ -1,11 +1,11 @@
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)](https://linuxserver.io) [![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)](https://linuxserver.io)
[![Blog](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=Blog)](https://blog.linuxserver.io "all the things you can do with our containers including How-To guides, opinions and much more!") [![Blog](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Blog)](https://blog.linuxserver.io "all the things you can do with our containers including How-To guides, opinions and much more!")
[![Discord](https://img.shields.io/discord/354974912613449730.svg?style=flat-square&color=E68523&label=Discord&logo=discord&logoColor=FFFFFF)](https://discord.gg/YWrKVTn "realtime support / chat with the community and the team.") [![Discord](https://img.shields.io/discord/354974912613449730.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Discord&logo=discord)](https://discord.gg/YWrKVTn "realtime support / chat with the community and the team.")
[![Discourse](https://img.shields.io/discourse/https/discourse.linuxserver.io/topics.svg?style=flat-square&color=E68523&logo=discourse&logoColor=FFFFFF)](https://discourse.linuxserver.io "post on our community forum.") [![Discourse](https://img.shields.io/discourse/https/discourse.linuxserver.io/topics.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=discourse)](https://discourse.linuxserver.io "post on our community forum.")
[![Fleet](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=Fleet)](https://fleet.linuxserver.io "an online web interface which displays all of our maintained images.") [![Fleet](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Fleet)](https://fleet.linuxserver.io "an online web interface which displays all of our maintained images.")
[![GitHub](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=GitHub&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver "view the source for all of our repositories.") [![GitHub](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub&logo=github)](https://github.com/linuxserver "view the source for all of our repositories.")
[![Open Collective](https://img.shields.io/opencollective/all/linuxserver.svg?style=flat-square&color=E68523&label=Supporters&logo=open%20collective&logoColor=FFFFFF)](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget") [![Open Collective](https://img.shields.io/opencollective/all/linuxserver.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Supporters&logo=open%20collective)](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget")
The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring: The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring:
@@ -25,16 +25,15 @@ Find us at:
# [linuxserver/code-server](https://github.com/linuxserver/docker-code-server) # [linuxserver/code-server](https://github.com/linuxserver/docker-code-server)
[![GitHub Stars](https://img.shields.io/github/stars/linuxserver/docker-code-server.svg?style=flat-square&color=E68523&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-code-server) [![GitHub Stars](https://img.shields.io/github/stars/linuxserver/docker-code-server.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/linuxserver/docker-code-server)
[![GitHub Release](https://img.shields.io/github/release/linuxserver/docker-code-server.svg?style=flat-square&color=E68523&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-code-server/releases) [![GitHub Release](https://img.shields.io/github/release/linuxserver/docker-code-server.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/linuxserver/docker-code-server/releases)
[![GitHub Package Repository](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=GitHub%20Package&logo=github&logoColor=FFFFFF)](https://github.com/linuxserver/docker-code-server/packages) [![GitHub Package Repository](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub%20Package&logo=github)](https://github.com/linuxserver/docker-code-server/packages)
[![GitLab Container Registry](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=GitLab%20Registry&logo=gitlab&logoColor=FFFFFF)](https://gitlab.com/Linuxserver.io/docker-code-server/container_registry) [![GitLab Container Registry](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitLab%20Registry&logo=gitlab)](https://gitlab.com/Linuxserver.io/docker-code-server/container_registry)
[![Quay.io](https://img.shields.io/static/v1.svg?style=flat-square&color=E68523&label=linuxserver.io&message=Quay.io)](https://quay.io/repository/linuxserver.io/code-server) [![MicroBadger Layers](https://img.shields.io/microbadger/layers/linuxserver/code-server.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge)](https://microbadger.com/images/linuxserver/code-server "Get your own version badge on microbadger.com")
[![MicroBadger Layers](https://img.shields.io/microbadger/layers/linuxserver/code-server.svg?style=flat-square&color=E68523)](https://microbadger.com/images/linuxserver/code-server "Get your own version badge on microbadger.com") [![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/code-server.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=pulls&logo=docker)](https://hub.docker.com/r/linuxserver/code-server)
[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/code-server.svg?style=flat-square&color=E68523&label=pulls&logo=docker&logoColor=FFFFFF)](https://hub.docker.com/r/linuxserver/code-server) [![Docker Stars](https://img.shields.io/docker/stars/linuxserver/code-server.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=stars&logo=docker)](https://hub.docker.com/r/linuxserver/code-server)
[![Docker Stars](https://img.shields.io/docker/stars/linuxserver/code-server.svg?style=flat-square&color=E68523&label=stars&logo=docker&logoColor=FFFFFF)](https://hub.docker.com/r/linuxserver/code-server) [![Jenkins Build](https://img.shields.io/jenkins/build?labelColor=555555&logoColor=ffffff&style=for-the-badge&jobUrl=https%3A%2F%2Fci.linuxserver.io%2Fjob%2FDocker-Pipeline-Builders%2Fjob%2Fdocker-code-server%2Fjob%2Fmaster%2F&logo=jenkins)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-code-server/job/master/)
[![Build Status](https://ci.linuxserver.io/view/all/job/Docker-Pipeline-Builders/job/docker-code-server/job/master/badge/icon?style=flat-square)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-code-server/job/master/) [![LSIO CI](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=CI&query=CI&url=https%3A%2F%2Flsio-ci.ams3.digitaloceanspaces.com%2Flspipepr%2Fcode-server%2Flatest%2Fci-status.yml)](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/code-server/latest/index.html)
[![](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/code-server/latest/badge.svg)](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/code-server/latest/index.html)
[Code-server](https://coder.com) is VS Code running on a remote server, accessible through the browser. [Code-server](https://coder.com) is VS Code running on a remote server, accessible through the browser.
- Code on your Chromebook, tablet, and laptop with a consistent dev environment. - Code on your Chromebook, tablet, and laptop with a consistent dev environment.
@@ -83,6 +82,7 @@ docker create \
-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 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 \
--restart unless-stopped \ --restart unless-stopped \
@@ -107,6 +107,7 @@ services:
- TZ=Europe/London - TZ=Europe/London
- PASSWORD=password #optional - PASSWORD=password #optional
- SUDO_PASSWORD=password #optional - SUDO_PASSWORD=password #optional
- PROXY_DOMAIN=code-server.my.domain #optional
volumes: volumes:
- /path/to/appdata/config:/config - /path/to/appdata/config:/config
ports: ports:
@@ -126,11 +127,12 @@ 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 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. |
## Environment variables from files (Docker secrets) ## Environment variables from files (Docker secrets)
You can set any environment variable from a file by using a special prepend `FILE__`. You can set any environment variable from a file by using a special prepend `FILE__`.
As an example: As an example:
@@ -140,6 +142,11 @@ As an example:
Will set the environment variable `PASSWORD` based on the contents of the `/run/secrets/mysecretpassword` file. Will set the environment variable `PASSWORD` based on the contents of the `/run/secrets/mysecretpassword` file.
## Umask for running applications
For all of our images we provide the ability to override the default umask settings for services started within the containers using the optional `-e UMASK=022` setting.
Keep in mind umask is not chmod it subtracts from permissions based on it's value it does not add. Please read up [here](https://en.wikipedia.org/wiki/Umask) before asking for support.
## User / Group Identifiers ## User / Group Identifiers
When using volumes (`-v` flags) permissions issues can arise between the host OS and the container, we avoid this issue by allowing you to specify the user `PUID` and group `PGID`. When using volumes (`-v` flags) permissions issues can arise between the host OS and the container, we avoid this issue by allowing you to specify the user `PUID` and group `PGID`.
@@ -167,7 +174,7 @@ git config --global user.email "email address"
## Docker Mods ## Docker Mods
[![Docker Mods](https://img.shields.io/badge/dynamic/yaml?style=for-the-badge&color=E68523&label=mods&query=%24.mods%5B%27code-server%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml)](https://mods.linuxserver.io/?mod=code-server "view available mods for this container.") [![Docker Mods](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=mods&query=%24.mods%5B%27code-server%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml)](https://mods.linuxserver.io/?mod=code-server "view available mods for this container.")
We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to enable additional functionality within the containers. The list of Mods available for this image (if any) can be accessed via the dynamic badge above. We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to enable additional functionality within the containers. The list of Mods available for this image (if any) can be accessed via the dynamic badge above.
@@ -236,6 +243,8 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions ## Versions
* **29.05.20:** - Add --domain-proxy support.
* **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.
* **29.04.20:** - Update start arguments. * **29.04.20:** - Update start arguments.
* **01.04.20:** - Structural changes required for v3. * **01.04.20:** - Structural changes required for v3.

View File

@@ -126,12 +126,12 @@ libsmartcols12.31.1-0.4ubuntu3.6
libsqlite3-03.22.0-1ubuntu0.3 libsqlite3-03.22.0-1ubuntu0.3
libss21.44.1-1ubuntu1.3 libss21.44.1-1ubuntu1.3
libssl1.0.01.0.2n-1ubuntu5.3 libssl1.0.01.0.2n-1ubuntu5.3
libssl1.11.1.1-1ubuntu2.1~18.04.5 libssl1.11.1.1-1ubuntu2.1~18.04.6
libstdc++68.4.0-1ubuntu1~18.04 libstdc++68.4.0-1ubuntu1~18.04
libsystemd0237-3ubuntu10.40 libsystemd0237-3ubuntu10.41
libtasn1-64.13-2 libtasn1-64.13-2
libtinfo56.1-1ubuntu1.18.04 libtinfo56.1-1ubuntu1.18.04
libudev1237-3ubuntu10.40 libudev1237-3ubuntu10.41
libunistring20.9.9-0ubuntu2 libunistring20.9.9-0ubuntu2
libuuid12.31.1-0.4ubuntu3.6 libuuid12.31.1-0.4ubuntu3.6
libwind0-heimdal7.5.0+dfsg-1 libwind0-heimdal7.5.0+dfsg-1
@@ -155,9 +155,9 @@ ncurses-base6.1-1ubuntu1.18.04
ncurses-bin6.1-1ubuntu1.18.04 ncurses-bin6.1-1ubuntu1.18.04
netbase5.4 netbase5.4
net-tools1.60+git20161116.90da8a0-1ubuntu1 net-tools1.60+git20161116.90da8a0-1ubuntu1
nodejs12.16.3-1nodesource1 nodejs12.17.0-1nodesource1
openssh-client1:7.6p1-4ubuntu0.3 openssh-client1:7.6p1-4ubuntu0.3
openssl1.1.1-1ubuntu2.1~18.04.5 openssl1.1.1-1ubuntu2.1~18.04.6
passwd1:4.5-1ubuntu2 passwd1:4.5-1ubuntu2
patch2.7.6-2ubuntu1.1 patch2.7.6-2ubuntu1.1
perl5.26.1-6ubuntu0.3 perl5.26.1-6ubuntu0.3
@@ -181,4 +181,5 @@ ubuntu-keyring2018.09.18.1~18.04.0
util-linux2.31.1-0.4ubuntu3.6 util-linux2.31.1-0.4ubuntu3.6
xauth1:1.0.10-1 xauth1:1.0.10-1
xz-utils5.2.2-1.3 xz-utils5.2.2-1.3
yarn1.22.4-1
zlib1g1:1.2.11.dfsg-0ubuntu2 zlib1g1:1.2.11.dfsg-0ubuntu2

View File

@@ -49,6 +49,7 @@ 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: "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
optional_block_1_items: "" optional_block_1_items: ""
@@ -67,6 +68,8 @@ app_setup_block: |
# changelog # changelog
changelogs: changelogs:
- { 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: "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." }
- { date: "01.04.20:", desc: "Structural changes required for v3." } - { date: "01.04.20:", desc: "Structural changes required for v3." }

View File

@@ -7,6 +7,12 @@ else
echo "starting with no password" echo "starting with no password"
fi fi
if [ -z ${PROXY_DOMAIN+x} ]; then
PROXY_DOMAIN_ARG=""
else
PROXY_DOMAIN_ARG="--proxy-domain=${PROXY_DOMAIN}"
fi
exec \ exec \
s6-setuidgid abc \ s6-setuidgid abc \
/usr/bin/code-server \ /usr/bin/code-server \
@@ -15,4 +21,5 @@ exec \
--extensions-dir /config/extensions \ --extensions-dir /config/extensions \
--disable-telemetry \ --disable-telemetry \
--auth "${AUTH}" \ --auth "${AUTH}" \
"${PROXY_DOMAIN_ARG}" \
/config/workspace /config/workspace