44 lines
2.0 KiB
Bash
Executable File
44 lines
2.0 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# install code-server service system-wide
|
|
export HOME=/root
|
|
curl -fsSL https://code-server.dev/install.sh | sh
|
|
|
|
# add our helper server to redirect to the proper URL for --link
|
|
git clone https://github.com/bpmct/coder-cloud-redirect-server
|
|
cd coder-cloud-redirect-server
|
|
cp coder-cloud-redirect.service /etc/systemd/system/
|
|
cp coder-cloud-redirect.py /usr/bin/
|
|
|
|
# create a code-server user
|
|
adduser --disabled-password --gecos "" coder
|
|
echo "coder ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/coder
|
|
usermod -aG sudo coder
|
|
|
|
# copy ssh keys from root
|
|
cp -r /root/.ssh /home/coder/.ssh
|
|
chown -R coder:coder /home/coder/.ssh
|
|
|
|
# configure code-server to use --link with the "coder" user
|
|
mkdir -p /home/coder/.config/code-server
|
|
touch /home/coder/.config/code-server/config.yaml
|
|
echo "link: true" > /home/coder/.config/code-server/config.yaml
|
|
chown -R coder:coder /home/coder/.config
|
|
|
|
# start and enable code-server and our helper service
|
|
systemctl enable --now code-server@coder
|
|
systemctl enable --now coder-cloud-redirect
|
|
sudo curl -sSL https://dot.net/v1/dotnet-install.sh | sudo bash /dev/stdin -Channel 6.0 -InstallDir /usr/share/dotnet && sudo ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet
|
|
git config --global user.email "tommy@terribledev.io"
|
|
git config --global user.name "Tommy Parnell"
|
|
sudo apt-get install libicu-dev -y && sudo apt-get install build-essential -y
|
|
curl -s https://ngrok-agent.s3.amazonaws.com/ngrok.asc | sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null && echo "deb https://ngrok-agent.s3.amazonaws.com buster main" | sudo tee /etc/apt/sources.list.d/ngrok.list
|
|
sudo apt update && sudo apt install ngrok
|
|
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
|
|
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo apt-key add -
|
|
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
|
|
sudo apt update
|
|
sudo apt install caddy
|
|
sudo echo "ide.terrible.dev \
|
|
reverse_proxy 127.0.0.1:8080" > /etc/caddy/Caddyfile
|
|
sudo systemctl reload caddy |