Алгоритм установки CLJ: различия между версиями
Перейти к навигации
Перейти к поиску
Avnew (обсуждение | вклад) |
Avnew (обсуждение | вклад) |
||
| Строка 348: | Строка 348: | ||
sudo nano /etc/guacamole/guacd.conf | sudo nano /etc/guacamole/guacd.conf | ||
| + | [daemon] | ||
| + | pid_file = /var/run/guacd.pid | ||
| + | #log_level = debug | ||
| + | |||
| + | [server] | ||
| + | #bind_host = localhost | ||
| + | bind_host = 127.0.0.1 | ||
| + | bind_port = 4822 | ||
| + | |||
| + | #[ssl] | ||
| + | #server_certificate = /etc/ssl/certs/guacd.crt | ||
| + | #server_key = /etc/ssl/private/guacd.key | ||
Версия 05:11, 11 мая 2023
Содержание
- 1 Как ставить Clojure
- 2 Ставим редакторы
- 3 Ставим GraalVM
- 4 Ставим native-image
- 5 Мурзилка https://github.com/swseighman/Installing-GraalVM-Enterprise-Edition
- 6 Установка RDP
- 7 Установка nvm
- 8 Спецификация Ring
- 9 VirtualBox
- 10 Guacamole
Как ставить Clojure
Устанавливаем на виртуальную машину 22.04
sudo apt-get update sudo apt-get upgrade
Ставим файловый менеджер
sudo apt-get install mc
Ставим Java
Проверяем установлена ли java
java -version
Если да - то обновляем
Если нет то ставим
sudo apt-get install -y software-properties-common wget apt-transport-https
sudo mkdir -p /etc/apt/keyrings
wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /etc/apt/keyrings/adoptium.asc
echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
sudo apt-get update
sudo apt-get install -y temurin-17-jdk
java -version
Ставим Leiningen
Ставим curl
sudo apt-get install -y curl
Качаем скрипт Lein
curl https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein > lein
Перемещаем в директорию
sudo mv lein /usr/local/bin/lein
Устанавливаем свойства запуска
sudo chmod a+x /usr/local/bin/lein
Запускаем
lein version
Clojure Command Line Interface (CLI)
Ставим зависимости
sudo apt-get install -y bash curl rlwrap
Качаем скрипт установки
curl -O https://download.clojure.org/install/linux-install-1.10.2.774.sh
Устанавливаем свойства запуска
chmod +x linux-install-1.10.2.774.sh
Запускаем инсталятор
sudo ./linux-install-1.10.2.774.sh
Проверяем версию
clj
Свежее
curl -O https://download.clojure.org/install/linux-install-1.11.1.1208.sh chmod +x linux-install-1.11.1.1208.sh sudo ./linux-install-1.11.1.1208.sh
Ставим редакторы
sudo add-apt-repository ppa:kelleyk/emacs
sudo apt-get update
sudo apt install emacs28
Emacs
Что почитать
в удаленке читать 1 читать 2
Ставим GraalVM
Ставим версию Java
sudo apt install openjdk-17-jre-headless
Качаем свою версия под процессор
Sudo wget https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.2/graalvm-ce-java17-linux-amd64-22.3.2.tar.gz
Распаковываем архив там где скачали
tar –xvzf graalvm-ce-java17-linux-amd64-22.3.2.tar.gz
Создаем каталог
sudo mkdir /usr/lib/jvm
Переносим
sudo mv graalvm-ce-java17-22.3.2/ /usr/lib/jvm
Переходим в каталог
cd /usr/lib/jvm
Для упрощения жизни создаем симлинк
sudo ln -s graalvm-ce-java17-22.3.2/ graalvm
Прописываем пути
echo 'export PATH=/usr/lib/jvm/graalvm-ce-java17-22.3.2/bin:$PATH' >> ~/.bashrc echo 'export JAVA_HOME=/usr/lib/jvm/graalvm-ce-java17-22.3.2' >> ~/.bashrc source ~/.bashrc
Проверяем версию
java -version
openjdk version "17.0.7" 2023-04-18 OpenJDK Runtime Environment GraalVM CE 22.3.2 (build 17.0.7+7-jvmci-22.3-b18) OpenJDK 64-Bit Server VM GraalVM CE 22.3.2 (build 17.0.7+7-jvmci-22.3-b18, mixed mode, sharing)
Ставим native-image
sudo su
/usr/lib/jvm/graalvm/bin/gu install native-image
Проверяем установку native-image --version
Мурзилка https://github.com/swseighman/Installing-GraalVM-Enterprise-Edition
Установка RDP
sudo apt install xrdp sudo systemctl enable xrdp
Установка nvm
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
source ~/.profile
Ставим последнюю версию node
nvm install node
Спецификация Ring
https://github.com/ring-clojure/ring/blob/master/SPEC
VirtualBox
Делаем файл запуска в нем пишем своего пользователя и группу
sudo systemctl edit vbox@.service --full --force
[Unit] Description=Virtual Box Guest %I After=network.target vboxdrv.service Before=runlevel2.target shutdown.target [Service] User=root Group=root Type=forking Restart=no TimeoutSec=5min IgnoreSIGPIPE=no KillMode=process GuessMainPID=no RemainAfterExit=yes ExecStart=/usr/bin/VBoxManage startvm %i --type headless ExecStop=/usr/bin/VBoxManage controlvm %i acpipowerbutton [Install] WantedBy=multi-user.target
Перегружаем сервисы
sudo systemctl daemon-reload
Смотрим список виртуальных машин
VBoxManage list vms
Теперь запускаем и активируем нужные
avnew@ubhost:~$ VBoxManage list vms
"ubServer" {ebafeea1-8a2d-4dd2-aacc-f7b70f70488a}
"ubServerR" {d9bd7c77-1f63-4dfc-83cd-885e6303f6fd}
avnew@ubhost:~$
sudo systemctl start vbox@d9bd7c77-1f63-4dfc-83cd-885e6303f6fd
sudo systemctl enable vbox@d9bd7c77-1f63-4dfc-83cd-885e6303f6fd
Перегружаемся.
Guacamole
1
sudo apt install -y gcc vim curl wget g++ libcairo2-dev libjpeg-turbo8-dev libpng-dev libtool-bin libossp-uuid-dev libavcodec-dev libavformat-dev libavutil-dev libswscale-dev build-essential libpango1.0-dev libssh2-1-dev libvncserver-dev libtelnet-dev libpulse-dev libssl-dev libvorbis-dev libwebp-dev libwebsockets-dev
Install FreeRDP2
sudo add-apt-repository ppa:remmina-ppa-team/remmina-next-daily sudo apt update sudo apt install freerdp2-dev freerdp2-x11 -y
Install Apache Tomcat
sudo apt install openjdk-11-jdk
проверяем версию java
java --version
Create Tomcat system user
sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat
Fetch Apache Tomcat
cd ~/
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.8/bin/apache-tomcat-10.1.8.tar.gz
sudo mkdir /opt/tomcat
sudo tar -xzf apache-tomcat-*.tar.gz -C /opt/tomcat/
sudo mv /opt/tomcat/apache-tomcat-*/ /opt/tomcat/tomcatapp
sudo chown -R tomcat: /opt/tomcat
sudo find /opt/tomcat/tomcatapp/bin/ -type f -iname "*.sh" -exec chmod +x {} \;
sudo nano /etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat 9 servlet container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"
Environment="CATALINA_BASE=/opt/tomcat/tomcatapp"
Environment="CATALINA_HOME=/opt/tomcat/tomcatapp"
Environment="CATALINA_PID=/opt/tomcat/tomcatapp/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/tomcatapp/bin/startup.sh
ExecStop=/opt/tomcat/tomcatapp/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now tomcat
systemctl status tomcat
sudo ufw allow 8080/tcp
Build the Guacamole Server From Source
Грузим стабильную версию
cd ~/
wget https://archive.apache.org/dist/guacamole/1.5.0/source/guacamole-server-1.5.0.tar.gz
tar xzf ~/guacamole-server-*.tar.gz
cd ~/guacamole-server-*/
./configure --with-init-dir=/etc/init.d
make
sudo make install
sudo ldconfig
sudo mkdir /etc/guacamole
sudo nano /etc/guacamole/guacd.conf
[daemon]
pid_file = /var/run/guacd.pid
- log_level = debug
[server]
- bind_host = localhost
bind_host = 127.0.0.1 bind_port = 4822
- [ssl]
- server_certificate = /etc/ssl/certs/guacd.crt
- server_key = /etc/ssl/private/guacd.key