Self hosting Cloud9 IDE
Разработка с Cloud9 IDE
Установка и настройка облачной IDE Cloud9 от Amazon на собственном сервере с Ubuntu. Редатирование и разработка проектов через обычный браузер.
Вводные
- Ubuntu LTS (>= 16.04/18.04)
- Node.js >=8.x
минимальная подготовка
sudo apt update -qq && sudo apt upgrade
sudo apt-get install curl git -y
Для примера создадим отдельного пользователя c9user
adduser c9user
sudo usermod -aG sudo c9user
Далее будем выполнять команды от имени поьзователя c9user
sudo su - c9user
приложение
Клонируем исходный код приложения
git clone git://github.com/c9/core.git c9sdk
и запустим установку
cd ~/c9sdk
scripts/install-sdk.sh
создадим директорию где будут храниться наши проекты
mkdir ~/projects
Протестируем установку, проверим, что всё работает как надо:
# в директории ~/c9sdk
node server.js -p 8080 -a user:password --listen x.x.x.x -w /home/c9user/projects
-p 8080
- порт, на котором будет запущен сервис-a user:password
- имя пользователя и пароль для простойBasic Authorization
--listen x.x.x.x
- привязка к IP адресу, что ограничить доступ можно указать127.0.0.1
, привязать ко всем IP -0.0.0.0
-w /home/c9user/projects
- рабочая область приложения
Для остановки сервиса CTRL+C
сервис
создадим сервис - sudo vim /lib/systemd/system/c9.service
Не забыть изменить параметры в соотвествие с вашими настройкми: user, pass, port, ip, workspace path
# Customize this file based on your bundler location, app directory, etc.
# Put this in /usr/lib/systemd/system (CentOS) or /lib/systemd/system (Ubuntu).
# Run:
# - systemctl enable c9
# - systemctl {start,stop,restart} c9
#
# This file corresponds to a single c9 process. Add multiple copies
# to run multiple processes (c9-1, c9-2, etc).
#
# See Inspeqtor's Systemd wiki page for more detail about Systemd:
# https://github.com/mperham/inspeqtor/wiki/Systemd
#
[Unit]
Description=c9
After=syslog.target network.target
[Service]
Type=simple
WorkingDirectory=/home/c9user/c9sdk
ExecStart=/bin/bash -lc 'node server.js -p 8080 -a user:pass --listen x.x.x.x -w /home/c9user/projects'
User=c9user
Group=c9user
UMask=0002
# if we crash, restart
RestartSec=1
#Restart=on-failure
Restart=always
# output goes to /var/log/syslog
StandardOutput=syslog
StandardError=syslog
# This will default to "bundler" if we don't specify it
SyslogIdentifier=c9
[Install]
WantedBy=multi-user.target
Включим сервис
sudo systemctl enable c9.service
# перезагрузка демона при внесении изменений
sudo systemctl daemon-reload
# перезапуск
sudo service c9 start
Переходим по указанному в параметрах адресу: http://x.x.x.x:8080. Вот и всё!
Теперь можно вести разработку ваших проектов с использованием облачной IDE от Amazon Cloud9.