mirror of
https://github.com/linuxserver/docker-mods.git
synced 2026-01-20 12:21:59 +08:00
use docker cli binary instead of install from repo
This commit is contained in:
parent
2922860dde
commit
ff2ed2035b
@ -7,8 +7,11 @@ FROM linuxserver/docker-compose:arm64v8-${COMPOSE_TAG} as compose-arm64
|
||||
FROM lsiobase/alpine:3.11 as buildstage
|
||||
|
||||
COPY --from=compose-amd64 /usr/local/bin/docker-compose /root-layer/docker-compose/docker-compose_x86_64
|
||||
COPY --from=compose-amd64 /usr/local/bin/docker /root-layer/docker-compose/docker_x86_64
|
||||
COPY --from=compose-arm32 /usr/local/bin/docker-compose /root-layer/docker-compose/docker-compose_armv7l
|
||||
COPY --from=compose-arm32 /usr/local/bin/docker /root-layer/docker-compose/docker_armv7l
|
||||
COPY --from=compose-arm64 /usr/local/bin/docker-compose /root-layer/docker-compose/docker-compose_aarch64
|
||||
COPY --from=compose-arm64 /usr/local/bin/docker /root-layer/docker-compose/docker_aarch64
|
||||
COPY root/ /root-layer/
|
||||
|
||||
# runtime stage
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# Docker - Docker mod for code-server
|
||||
|
||||
This mod adds docker and docker-compose to code-server, to be installed/updated during container start.
|
||||
This mod adds docker and docker-compose binaries to code-server.
|
||||
|
||||
**IMPORTANT NOTE**: For docker access inside code-server, a volume mapping needs to be added for `/var/run/docker.sock:/var/run/docker.sock` in code-server docker run/create/compose.
|
||||
|
||||
|
||||
@ -1,33 +1,29 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
echo "**** installing docker environment ****"
|
||||
if ! dpkg -l | grep gnupg > /dev/null; then
|
||||
apt-get update && apt-get install -y gnupg
|
||||
fi
|
||||
[[ ! -f "/etc/apt/sources.list.d/docker-ce.list" ]] && \
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \
|
||||
source /etc/os-release && \
|
||||
echo "deb https://download.docker.com/linux/ubuntu $UBUNTU_CODENAME stable" > /etc/apt/sources.list.d/docker-ce.list
|
||||
apt-get update && apt-get install -y --no-install-recommends \
|
||||
docker-ce
|
||||
echo "**** fixing permissions ****"
|
||||
DOCKER_GID=$(stat -c '%g' "/var/run/docker.sock")
|
||||
if id -G abc | grep -qw "$DOCKER_GID"; then
|
||||
exit 0
|
||||
else
|
||||
DOCKER_NAME=$(getent group "${DOCKER_GID}" | awk -F: '{print $1}')
|
||||
if [ -z "${DOCKER_NAME}" ]; then
|
||||
DOCKER_NAME="dockergroup"
|
||||
groupadd -g "${DOCKER_GID}" "${DOCKER_NAME}"
|
||||
fi
|
||||
usermod -aG "${DOCKER_NAME}" abc
|
||||
fi
|
||||
echo "**** installing docker compose ****"
|
||||
echo "**** installing docker and docker compose ****"
|
||||
ARCH=$(uname -m)
|
||||
if [ -f "/docker-compose/docker-compose_${ARCH}" ]; then
|
||||
echo "Copying over docker and docker-compose binaries"
|
||||
mv "/docker-compose/docker-compose_${ARCH}" /usr/local/bin/docker-compose
|
||||
mv "/docker-compose/docker_${ARCH}" /usr/local/bin/docker
|
||||
chmod +x /usr/local/bin/docker-compose
|
||||
rm -rf /docker-compose
|
||||
else
|
||||
echo "docker-compose already installed, skipping"
|
||||
fi
|
||||
echo "**** docker and docker-compose already installed, skipping ****"
|
||||
fi
|
||||
|
||||
if [ -S /var/run/docker.sock ]; then
|
||||
DOCKER_GID=$(stat -c '%g' "/var/run/docker.sock")
|
||||
if id -G abc | grep -qw "$DOCKER_GID"; then
|
||||
exit 0
|
||||
else
|
||||
DOCKER_NAME=$(getent group "${DOCKER_GID}" | awk -F: '{print $1}')
|
||||
if [ -z "${DOCKER_NAME}" ]; then
|
||||
DOCKER_NAME="dockergroup"
|
||||
groupadd -g "${DOCKER_GID}" "${DOCKER_NAME}"
|
||||
fi
|
||||
usermod -aG "${DOCKER_NAME}" abc
|
||||
fi
|
||||
else
|
||||
echo "**** Please map /var/run/docker.sock or docker won't work inside this container ****"
|
||||
fi
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user