#!/bin/bash # if [ -n "$ROOT_PASSWD" ]; then # echo "root:${ROOT_PASSWD}" | chpasswd # echo "密码设置完毕" >> /root/info.log # fi if [ -e "/home/coder/.gitconfig" ]; then echo "git配置文件已存在" >> /tmp/log/info.log else touch /home/coder/.gitconfig echo "git配置文件已创建" >> /tmp/log/info.log fi # git使用openssh的shh程序 git config --global core.sshCommand "/usr/bin/ssh" if [ -n "$GIT_USER" ] && [ -n "$GIT_EMAIL" ]; then git config --global user.name "$GIT_USER" git config --global user.email "$GIT_EMAIL" echo "git 用户已设置完毕" >> /tmp/log/info.log fi if [ -n "$DOCKER_USER" ] && [ -n "$DOCKER_PASSWD" ]; then docker login -u "$DOCKER_USER" -p "$DOCKER_PASSWD" echo "docker 用户登录完成" >> /tmp/log/info.log fi # service ssh start >> /tmp/log/info.log # ssh-agent bash >> /tmp/log/info.log cat /tmp/log/info.log set -eu # We do this first to ensure sudo works below when renaming the user. # Otherwise the current container UID may not exist in the passwd database. eval "$(fixuid -q)" if [ "${DOCKER_USER-}" ]; then USER="$DOCKER_USER" if [ "$DOCKER_USER" != "$(whoami)" ]; then echo "$DOCKER_USER ALL=(ALL) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/nopasswd > /dev/null # Unfortunately we cannot change $HOME as we cannot move any bind mounts # nor can we bind mount $HOME into a new home as that requires a privileged container. sudo usermod --login "$DOCKER_USER" coder sudo groupmod -n "$DOCKER_USER" coder sudo sed -i "/coder/d" /etc/sudoers.d/nopasswd fi fi # Allow users to have scripts run on container startup to prepare workspace. # https://github.com/coder/code-server/issues/5177 if [ -d "${ENTRYPOINTD}" ]; then find "${ENTRYPOINTD}" -type f -executable -print -exec {} \; fi exec dumb-init /usr/bin/code-server "$@"