From 71dacedfe779d0fcbb345e34dd2454b19440b693 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Pereira?= Date: Wed, 16 Mar 2022 10:24:41 +0000 Subject: [PATCH 1/2] feat: add sles scripts --- README.md | 6 ++++ sles/install.bash | 17 +++++++++++ sles/installDocker.bash | 53 +++++++++++++++++++++++++++++++++ sles/installPowershell.bash | 7 +++++ utils/portainer-agent-stack.yml | 2 +- 5 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 sles/install.bash create mode 100644 sles/installDocker.bash create mode 100644 sles/installPowershell.bash diff --git a/README.md b/README.md index 607296f3..8e873f28 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,12 @@ Critical Manufacturing Installation Scripts curl -fsSL https://raw.githubusercontent.com/criticalmanufacturing/install-scripts/main/ubuntu/install.bash | sudo bash ``` +## Prepare single server SLES environment + +``` +curl -fsSL https://raw.githubusercontent.com/criticalmanufacturing/install-scripts/development-add-sles-scripts/sles/install.bash | sudo bash +``` + ## Prepare Windows environment The installation assumes that docker is installed and running. diff --git a/sles/install.bash b/sles/install.bash new file mode 100644 index 00000000..34dd8b58 --- /dev/null +++ b/sles/install.bash @@ -0,0 +1,17 @@ +#!/bin/bash +REPOSITORY="https://raw.githubusercontent.com/joaoopereira/install-scripts/development-add-sles-scripts" + +#disable swap +swapoff -a +sed -i 's/\/swap.img/#\/swap.img/g' /etc/fstab + +#install docker +curl -fsSL "$REPOSITORY/sles/installDocker.bash" | bash; + +# Install PowerShell +curl -fsSL "$REPOSITORY/sles/installPowershell.bash" | bash; + +#Deploy portainer +wget -q "$REPOSITORY/utils/deployPortainer.ps1" +pwsh -File ./deployPortainer.ps1 -RepositoryUrl $REPOSITORY +rm -f deployPortainer.ps1 diff --git a/sles/installDocker.bash b/sles/installDocker.bash new file mode 100644 index 00000000..73cd5896 --- /dev/null +++ b/sles/installDocker.bash @@ -0,0 +1,53 @@ +#update system +zypper refresh +zypper update -y +#remove old docker version +zypper remove docker \ + docker-client \ + docker-client-latest \ + docker-common \ + docker-latest \ + docker-latest-logrotate \ + docker-logrotate \ + docker-engine \ + runc + +#install utils +zypper install -y wget ca-certificates curl apache2-utils + +#install SUSE Connect +#check SP 3 +SUSEConnect -p sle-module-containers/15.3/x86_64 -r '' + +#install DOCKER CE +zypper install -y docker +systemctl enable docker.service +systemctl start docker.service + +#install Docker Compose V2 +mkdir -p ~/.docker/cli-plugins/ +curl -SL https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose +chmod +x ~/.docker/cli-plugins/docker-compose +#change docker default log policy +echo "{ + \"log-driver\": \"json-file\", + \"log-opts\": { + \"max-size\": \"10m\", + \"max-file\": \"5\" + } +}" > /etc/docker/daemon.json + +if [[ $(grep WSL /proc/version) ]]; +then + echo "Bash is running on WSL" + # Start Docker daemon automatically when logging in if not running. + RUNNING=`ps aux | grep dockerd | grep -v grep` + if [ -z "$RUNNING" ]; + then + echo "Staring dockerd" + sudo dockerd > /dev/null 2>&1 & disown + fi +else + #reload docker config + systemctl reload docker +fi \ No newline at end of file diff --git a/sles/installPowershell.bash b/sles/installPowershell.bash new file mode 100644 index 00000000..16ec32f3 --- /dev/null +++ b/sles/installPowershell.bash @@ -0,0 +1,7 @@ +# Install powershell +zypper update +zypper install -y curl tar libicu libopenssl1_1 krb5 +curl -L https://github.com/PowerShell/PowerShell/releases/download/v7.2.1/powershell-7.2.1-linux-x64.tar.gz -o /tmp/powershell.tar.gz +mkdir -p /opt/microsoft/powershell +tar -xzf /tmp/powershell.tar.gz -C /opt/microsoft/powershell/ +chmod +x /usr/bin/pwsh \ No newline at end of file diff --git a/utils/portainer-agent-stack.yml b/utils/portainer-agent-stack.yml index 1931f7a5..4a47b492 100644 --- a/utils/portainer-agent-stack.yml +++ b/utils/portainer-agent-stack.yml @@ -14,7 +14,7 @@ services: portainer: image: portainer/portainer-ce:2.9.1 - command: -H tcp://tasks.agent:9001 --admin-password ADMIN_PASSWORD --tlsskipverify + command: -H tcp://tasks.agent:9001 --admin-password ADMIN_PASSWORD --tlsskipverify --sslcert /run/secrets/portainer.sslcert --sslkey /run/secrets/portainer.sslkey ports: - target: 9000 published: 9000 From 5c8fe11a4ec6faf5a9a9eae0273cd42627e8af42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Pereira?= Date: Wed, 27 Apr 2022 08:58:16 +0100 Subject: [PATCH 2/2] chore: change repo url --- utils/deployPortainer.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/deployPortainer.ps1 b/utils/deployPortainer.ps1 index 66292489..b882375c 100644 --- a/utils/deployPortainer.ps1 +++ b/utils/deployPortainer.ps1 @@ -1,5 +1,5 @@ param ( - [String]$RepositoryUrl = "https://raw.githubusercontent.com/criticalmanufacturing/install-scripts/main", + [String]$RepositoryUrl = "https://raw.githubusercontent.com/joaoopereira/install-scripts/development-add-sles-scripts", [String]$PortainerPassword = "", [Int]$PortainerPasswordLength = 18 )