mirror of https://github.com/tteck/Proxmox
parent
eeafae190c
commit
2139f9b9db
1 changed files with 76 additions and 0 deletions
@ -0,0 +1,76 @@ |
||||
#!/usr/bin/env bash |
||||
|
||||
# Copyright (c) 2021-2023 tteck |
||||
# Author: tteck (tteckster) |
||||
# License: MIT |
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE |
||||
|
||||
source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" |
||||
color |
||||
verb_ip6 |
||||
catch_errors |
||||
setting_up_container |
||||
network_check |
||||
update_os |
||||
|
||||
msg_info "Installing Dependencies" |
||||
$STD apt-get install -y curl |
||||
$STD apt-get install -y sudo |
||||
$STD apt-get install -y mc |
||||
$STD apt-get install -y git |
||||
$STD apt-get install -y libyaml-dev |
||||
$STD apt-get install -y build-essential |
||||
msg_ok "Installed Dependencies" |
||||
|
||||
msg_info "Installing Python3" |
||||
$STD apt-get install -y \ |
||||
python3-pip \ |
||||
python3-dev \ |
||||
python3-setuptools \ |
||||
python3-venv |
||||
msg_ok "Installed Python3" |
||||
|
||||
msg_info "Creating user octoprint" |
||||
useradd -m -s /bin/bash -p $(openssl passwd -1 octoprint) octoprint |
||||
usermod -aG sudo,tty,dialout octoprint |
||||
chown -R octoprint:octoprint /opt |
||||
msg_ok "Created user octoprint" |
||||
|
||||
msg_info "Installing OctoPrint" |
||||
$STD sudo -u octoprint bash << EOF |
||||
mkdir /opt/octoprint |
||||
cd /opt/octoprint |
||||
python3 -m venv . |
||||
source bin/activate |
||||
pip install --upgrade pip |
||||
pip install octoprint |
||||
EOF |
||||
msg_ok "Installed OctoPrint" |
||||
|
||||
msg_info "Creating Service" |
||||
cat <<EOF >/etc/systemd/system/octoprint.service |
||||
[Unit] |
||||
Description=The snappy web interface for your 3D printer |
||||
After=network-online.target |
||||
Wants=network-online.target |
||||
|
||||
[Service] |
||||
Environment="LC_ALL=C.UTF-8" |
||||
Environment="LANG=C.UTF-8" |
||||
Type=exec |
||||
User=octoprint |
||||
ExecStart=/opt/octoprint/bin/octoprint serve |
||||
|
||||
[Install] |
||||
WantedBy=multi-user.target |
||||
EOF |
||||
systemctl enable -q --now octoprint.service |
||||
msg_ok "Created Service" |
||||
|
||||
motd_ssh |
||||
root |
||||
|
||||
msg_info "Cleaning up" |
||||
$STD apt-get autoremove |
||||
$STD apt-get autoclean |
||||
msg_ok "Cleaned" |
Loading…
Reference in new issue