added code-server
Signed-off-by: Marc Ahlgrim <marc@onemarcfifty.com>
This commit is contained in:
parent
5473938286
commit
ba4a5fac73
@ -4,21 +4,39 @@
|
|||||||
# vanilla debian 11
|
# vanilla debian 11
|
||||||
# RUN AS ROOT!
|
# RUN AS ROOT!
|
||||||
|
|
||||||
|
# you might wan to change this
|
||||||
|
# sets all passwords of users and the vscode server to "onemarcfifty"
|
||||||
|
|
||||||
|
USERPASSWORD=onemarcfifty
|
||||||
|
|
||||||
|
|
||||||
|
# first we install some software
|
||||||
|
|
||||||
apt update
|
apt update
|
||||||
apt -y upgrade
|
apt -y upgrade
|
||||||
apt install -y python3 pip sudo wget curl
|
apt install -y python3 pip sudo wget curl
|
||||||
|
|
||||||
|
# now let's add the rundeck user
|
||||||
|
|
||||||
useradd -m -G sudo -s /bin/bash rundeck
|
useradd -m -G sudo -s /bin/bash rundeck
|
||||||
# passwd rundeck
|
echo "rundeck:$USERPASSWORD" | chpasswd
|
||||||
|
|
||||||
|
# install ansible through pip
|
||||||
|
|
||||||
pip install ansible
|
pip install ansible
|
||||||
|
|
||||||
|
# download the rundeck installation script and run it directly
|
||||||
|
# then install rundeck
|
||||||
|
|
||||||
curl https://raw.githubusercontent.com/rundeck/packaging/main/scripts/deb-setup.sh 2> /dev/null | sudo bash -s rundeck
|
curl https://raw.githubusercontent.com/rundeck/packaging/main/scripts/deb-setup.sh 2> /dev/null | sudo bash -s rundeck
|
||||||
apt update
|
apt update
|
||||||
apt -y install rundeck
|
apt -y install rundeck
|
||||||
|
|
||||||
|
# replace the localhost entries in the config files with the hostname
|
||||||
|
|
||||||
sed -i s/localhost/`hostname`/g /etc/rundeck/framework.properties
|
sed -i s/localhost/`hostname`/g /etc/rundeck/framework.properties
|
||||||
sed -i s/localhost/`hostname`/g /etc/rundeck/rundeck-config.properties
|
sed -i s/localhost/`hostname`/g /etc/rundeck/rundeck-config.properties
|
||||||
|
|
||||||
# optional: move to mariadb
|
|
||||||
|
|
||||||
# install mariadb
|
# install mariadb
|
||||||
apt install -y mariadb-server
|
apt install -y mariadb-server
|
||||||
# create rundeck db
|
# create rundeck db
|
||||||
@ -27,15 +45,54 @@ mysql -u root -e 'create database rundeck'
|
|||||||
RANDOMPASSWORD=`date +%s | sha256sum | base64 | head -c 32`
|
RANDOMPASSWORD=`date +%s | sha256sum | base64 | head -c 32`
|
||||||
mysql -u root -e "create user rundeck@localhost identified by '$RANDOMPASSWORD'"
|
mysql -u root -e "create user rundeck@localhost identified by '$RANDOMPASSWORD'"
|
||||||
mysql -u root -e 'grant ALL on rundeck.* to rundeck@localhost'
|
mysql -u root -e 'grant ALL on rundeck.* to rundeck@localhost'
|
||||||
|
|
||||||
# update the rundeck config
|
# update the rundeck config
|
||||||
|
# comment out the original data source
|
||||||
|
|
||||||
sed -i s/^dataSource.url/\#dataSource.url/g /etc/rundeck/rundeck-config.properties
|
sed -i s/^dataSource.url/\#dataSource.url/g /etc/rundeck/rundeck-config.properties
|
||||||
echo 'dataSource.driverClassName = org.mariadb.jdbc.Driver'>>/etc/rundeck/rundeck-config.properties
|
|
||||||
echo 'dataSource.url = jdbc:mysql://localhost/rundeck?autoReconnect=true&useSSL=false' >>/etc/rundeck/rundeck-config.properties
|
# point the datasource to the new local mariadb installation
|
||||||
echo 'dataSource.username = rundeck' >>/etc/rundeck/rundeck-config.properties
|
|
||||||
echo "dataSource.password = $RANDOMPASSWORD" >>/etc/rundeck/rundeck-config.properties
|
(cat >> /etc/rundeck/rundeck-config.properties) <<EOF
|
||||||
|
dataSource.driverClassName = org.mariadb.jdbc.Driver
|
||||||
|
dataSource.url = jdbc:mysql://localhost/rundeck?autoReconnect=true&useSSL=false
|
||||||
|
dataSource.username = rundeck
|
||||||
|
dataSource.password = $RANDOMPASSWORD
|
||||||
|
EOF
|
||||||
RANDOMPASSWORD="nothing here"
|
RANDOMPASSWORD="nothing here"
|
||||||
|
|
||||||
# start rundeck services
|
# start rundeck services
|
||||||
|
|
||||||
/etc/init.d/rundeckd start
|
/etc/init.d/rundeckd start
|
||||||
systemctl enable rundeckd
|
systemctl enable rundeckd
|
||||||
|
|
||||||
|
# now let's install visual studio code server (vscode-server)
|
||||||
|
|
||||||
|
wget https://github.com/coder/code-server/releases/download/v4.6.0/code-server_4.6.0_amd64.deb
|
||||||
|
sudo apt install ./code-server_4.6.0_amd64.deb
|
||||||
|
|
||||||
|
# now we need to configure a systemd unit file so that
|
||||||
|
# code-server starts automatically
|
||||||
|
# please note that this uses http unencrypted.
|
||||||
|
# You might want to tweak this for added security
|
||||||
|
|
||||||
|
(cat >/etc/systemd/system/code-server.service) <<EOF
|
||||||
|
[Unit]
|
||||||
|
Description=code-server
|
||||||
|
After=networking.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=rundeck
|
||||||
|
Environment=PASSWORD=$USERPASSWORD
|
||||||
|
WorkingDirectory=/var/lib/rundeck
|
||||||
|
ExecStart=/usr/bin/code-server --host 0.0.0.0
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
|
||||||
|
systemctl daemon-reload
|
||||||
|
systemctl enable code-server.service
|
||||||
|
systemctl start code-server.service
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user