Last active
June 8, 2021 15:19
-
-
Save jasonbronson/b449276f2442172ed0f05c8e83f681da to your computer and use it in GitHub Desktop.
Rancher Docker Install Debian 10
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
adduser --disabled-password --gecos "" jason | |
apt-get update | |
apt-get install \ | |
apt-transport-https \ | |
ca-certificates \ | |
curl \ | |
gnupg \ | |
lsb-release | |
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg | |
echo \ | |
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \ | |
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null | |
apt-get update | |
apt-get install -y docker-ce docker-ce-cli containerd.io | |
docker run -d --restart=unless-stopped \ | |
-p 8442:80 -p 8443:443 \ | |
-v /opt/rancher:/var/lib/rancher \ | |
--privileged \ | |
rancher/rancher:latest | |
docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.5.8 --server https://68.183.154.117:8443 --token g5rg82spmc8fkg7z4sppq6mmwnpghgpd5p9c4gkwbs9lczt88zt95j --ca-checksum ae8f8e3067d295a9dee7d6d8ecf9c99200fe53ae27893ac652c7bd1999294b11 --etcd --controlplane --worker | |
apt install -y nginx certbot python3-certbot-nginx | |
curl -O https://temporary2020.s3.amazonaws.com/code.bronson.dev/fullchain.pem | |
curl -O https://temporary2020.s3.amazonaws.com/code.bronson.dev/privkey.pem | |
cat > /etc/nginx/sites-available/code-server <<EOL | |
server { | |
server_name code.bronson.dev; | |
location / { | |
proxy_pass http://localhost:8080/; | |
proxy_set_header Host $host; | |
proxy_set_header Upgrade $http_upgrade; | |
proxy_set_header Connection upgrade; | |
proxy_set_header Accept-Encoding gzip; | |
} | |
listen [::]:443 ssl ipv6only=on; # managed by Certbot | |
listen 443 ssl; # managed by Certbot | |
ssl_certificate /etc/letsencrypt/live/code.bronson.dev/fullchain.pem; # managed by Certbot | |
ssl_certificate_key /etc/letsencrypt/live/code.bronson.dev/privkey.pem; # managed by Certbot | |
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot | |
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot | |
} | |
server { | |
if ($host = code.bronson.dev) { | |
return 301 https://$host$request_uri; | |
} # managed by Certbot | |
listen 80; | |
listen [::]:80; | |
server_name code.bronson.dev; | |
return 404; # managed by Certbot | |
} | |
EOL | |
ln -s /etc/nginx/sites-available/code-server /etc/nginx/sites-enabled/code-server | |
certbot --non-interactive --redirect --agree-tos --nginx -d code.bronson.dev -m [email protected] | |
apt-get -y install git iproute2 procps lsb-release | |
curl -O https://dl.google.com/go/go1.16.5.linux-amd64.tar.gz | |
tar xvf go1.16.5.linux-amd64.tar.gz | |
chown -R jason:jason ./go | |
mv go /usr/local | |
cat >> /home/jason/.profile <<EOL | |
export GOPATH=$HOME/work | |
export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin | |
EOL | |
mkdir /home/jason/work | |
chown -R jason:jason /home/jason/work | |
cat > /home/jason/.config/code-server/config.yaml <<EOL | |
bind-addr: 127.0.0.1:8080 | |
auth: password | |
hashed-password: 5d087b3f979c99c8d32176a938c857e805f95ef75926e04bfb15ac1c03ef7eeb | |
cert: false | |
EOL | |
curl -fsSL https://code-server.dev/install.sh | sh | |
apt install -y docker-compose | |
code-server --install-extension 'golang.go' | |
systemctl enable --now code-server@jason | |
apt-get update \ | |
; /usr/local/go/bin/go get -u -v \ | |
golang.org/x/tools/gopls@latest \ | |
golang.org/x/tools/cmd/guru \ | |
golang.org/x/tools/cmd/gorename \ | |
github.com/go-delve/delve/cmd/dlv \ | |
github.com/rogpeppe/godef \ | |
golang.org/x/tools/cmd/goimports \ | |
golang.org/x/lint/golint | |
echo "export PATH=\$PATH:/usr/local/go/bin" >> /home/jason/.bashrc |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment