diff --git a/Jenkins_install.md b/CI_CD/Jenkins_install.md similarity index 94% rename from Jenkins_install.md rename to CI_CD/Jenkins_install.md index 1bdccff..2b8db32 100644 --- a/Jenkins_install.md +++ b/CI_CD/Jenkins_install.md @@ -1,87 +1,87 @@ -Install by docs from https://www.cherryservers.com/blog/install-jenkins-ubuntu - -## Prepare installation - -Открываю нужный сервер -```sh -wsl -``` -```sh -sudo apt update -``` -```sh -sudo apt upgrade -``` -```sh - sudo apt install openjdk-21-jdk openjdk-21-jre -y && - java -version -``` -## Add Jenkins Repository - -```sh -sudo wget -O /usr/share/keyrings/jenkins-keyring.asc https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key -``` -Next, add the Jenkins repository to your system’s sources.list: -```sh -sudo sh -c 'echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian binary/ > /etc/apt/sources.list.d/jenkins.list' -``` - -```sh -sudo apt update -``` - -```sh -sudo apt install jenkins -y -``` -If the software was installed incorrectly, you can reinstall it after uninstalling it first.: -```sh -sudo apt remove --purge jenkins -``` - -```sh -jenkins --version -``` - -Try run jenkins without service -```sh -sudo -u jenkins /usr/bin/jenkins --httpPort=8081 --httpListenAddress=0.0.0.0 -``` - -```sh -sudo mcedit /lib/systemd/system/jenkins.service -``` - -```sh -sudo systemctl start jenkins && -sudo systemctl enable jenkins && -sudo systemctl status jenkins -``` - -```sh -sudo journalctl -xeu jenkins.service | tail -n 50 -``` -Если порт занят, проверяем кем: -```sh -sudo lsof -i :8081 -``` -Переопределяем порт: -```sh -sudo mcedit /etc/default/jenkins -``` -```conf -HTTP_PORT=8081 -``` - -```sh -sudo systemctl restart jenkins -``` - -```sh -start http://127.0.0.1:8081 -``` - - -See what port in locked -```sh -netstat -tpln +Install by docs from https://www.cherryservers.com/blog/install-jenkins-ubuntu + +## Prepare installation + +Открываю нужный сервер +```sh +wsl +``` +```sh +sudo apt update +``` +```sh +sudo apt upgrade +``` +```sh + sudo apt install openjdk-21-jdk openjdk-21-jre -y && + java -version +``` +## Add Jenkins Repository + +```sh +sudo wget -O /usr/share/keyrings/jenkins-keyring.asc https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key +``` +Next, add the Jenkins repository to your system’s sources.list: +```sh +sudo sh -c 'echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian binary/ > /etc/apt/sources.list.d/jenkins.list' +``` + +```sh +sudo apt update +``` + +```sh +sudo apt install jenkins -y +``` +If the software was installed incorrectly, you can reinstall it after uninstalling it first.: +```sh +sudo apt remove --purge jenkins +``` + +```sh +jenkins --version +``` + +Try run jenkins without service +```sh +sudo -u jenkins /usr/bin/jenkins --httpPort=8081 --httpListenAddress=0.0.0.0 +``` + +```sh +sudo mcedit /lib/systemd/system/jenkins.service +``` + +```sh +sudo systemctl start jenkins && +sudo systemctl enable jenkins && +sudo systemctl status jenkins +``` + +```sh +sudo journalctl -xeu jenkins.service | tail -n 50 +``` +Если порт занят, проверяем кем: +```sh +sudo lsof -i :8081 +``` +Переопределяем порт: +```sh +sudo mcedit /etc/default/jenkins +``` +```conf +HTTP_PORT=8081 +``` + +```sh +sudo systemctl restart jenkins +``` + +```sh +start http://127.0.0.1:8081 +``` + + +See what port in locked +```sh +netstat -tpln ``` \ No newline at end of file diff --git a/CI_CD/Woodpecker_CI.md b/CI_CD/Woodpecker_CI.md new file mode 100644 index 0000000..851cef0 --- /dev/null +++ b/CI_CD/Woodpecker_CI.md @@ -0,0 +1,153 @@ + +# Установка Woodpecker CI на Ubuntu с Gitea + +--- + +## 🛠️ Системные требования + +- Ubuntu 20.04+ (работает и на 22.04) +- Docker и Docker Compose +- Установленный Gitea (можно локально или через Docker) + +--- + +## 📦 Шаг 1: Установка Docker и Docker Compose + +```bash +sudo apt update +sudo apt install -y docker.io docker-compose +sudo systemctl enable docker +sudo usermod -aG docker $USER +``` + +> ⚠️ После добавления пользователя в группу `docker` нужно **перелогиниться**, чтобы изменения вступили в силу. + +--- + +## 🧱 Шаг 2: Установка Gitea через Docker Compose + +Создайте директорию `gitea`, и в ней файл `docker-compose.yml`: + +```yaml +version: "3" + +services: + gitea: + image: gitea/gitea:latest + container_name: gitea + restart: always + environment: + - USER_UID=1000 + - USER_GID=1000 + volumes: + - ./gitea:/data + ports: + - "3000:3000" + - "2222:22" +``` + +```bash +mkdir gitea && cd gitea +docker-compose up -d +``` + +Теперь Gitea будет доступна по адресу: [http://localhost:3000](http://localhost:3000) + +--- + +## 🔐 Шаг 3: Настройка Gitea + +1. Перейдите в браузере на `http://localhost:3000` +2. Пройдите установку: + - База данных: SQLite или PostgreSQL (по желанию) + - URL: `http://gitea:3000/` + - Включите регистрацию, если нужно +3. Создайте пользователя (например, `ci-user`) +4. Сгенерируйте **токен доступа** (access token), он будет нужен для Woodpecker + +--- + +## 🚀 Шаг 4: Установка Woodpecker CI + +Создайте директорию `woodpecker`, и в ней файл `docker-compose.yml`: + +```yaml +version: "3" + +services: + woodpecker-server: + image: woodpeckerci/woodpecker-server:latest + container_name: woodpecker-server + restart: always + environment: + - WOODPECKER_OPEN=true + - WOODPECKER_HOST=http://localhost:8000 + - WOODPECKER_GITEA=true + - WOODPECKER_GITEA_URL=http://gitea:3000 + - WOODPECKER_GITEA_CLIENT=your_client_id + - WOODPECKER_GITEA_SECRET=your_client_secret + - WOODPECKER_SECRET=supersecret + ports: + - "8000:8000" + volumes: + - ./data:/var/lib/woodpecker/ + depends_on: + - gitea + + woodpecker-agent: + image: woodpeckerci/woodpecker-agent:latest + container_name: woodpecker-agent + restart: always + environment: + - WOODPECKER_SERVER=woodpecker-server:9000 + - WOODPECKER_SECRET=supersecret + volumes: + - /var/run/docker.sock:/var/run/docker.sock +``` + +--- + +## ⚙️ Шаг 5: Создание OAuth App в Gitea + +1. Перейдите в Gitea → `Settings` → `Applications` +2. Создайте новое приложение (OAuth2) + - Redirect URI: `http://localhost:8000/login` +3. Получите `Client ID` и `Client Secret` +4. Вставьте их в `WOODPECKER_GITEA_CLIENT` и `WOODPECKER_GITEA_SECRET` + +--- + +## ▶️ Шаг 6: Запуск Woodpecker + +```bash +docker-compose up -d +``` + +После запуска Woodpecker будет доступен по адресу: [http://localhost:8000](http://localhost:8000) + +--- + +## 📁 Пример `.woodpecker.yml` файла + +```yaml +pipeline: + build: + image: node:alpine + commands: + - npm install + - npm test +``` + +--- + +## ✅ Готово! + +Теперь вы можете подключать репозитории из Gitea и запускать CI-пайплайны в Woodpecker. + +--- + +## 🔗 Полезные ссылки + +- Woodpecker CI: https://woodpecker-ci.org/ +- Gitea: https://gitea.io/ +- Документация Woodpecker: https://woodpecker-ci.org/docs/ diff --git a/PostgreSQL/PostgreSQL_install.md b/PostgreSQL/PostgreSQL_install.md index 5dacf6a..a47691e 100644 --- a/PostgreSQL/PostgreSQL_install.md +++ b/PostgreSQL/PostgreSQL_install.md @@ -51,8 +51,14 @@ O:\MyDocuments\DataBases\postgresql-10.13-1-windows-x64-binaries\pgsql\bin\initd sudo -u postgres psql && \password postgres ``` +Или так можно поменять пароль через SQL скрипт +```sql +ALTER ROLE postgres WITH PASSWORD 'SerTestSecrKey1' VALID UNTIL 'infinity'; +``` Чтобы выйти нужно выпольнить команду: \q + + Роль входа по умолчанию: postgres пароль можно поменять когда в pg_hba.conf установить trust Задать пароль: sudo -u postgres psql diff --git a/PostgreSQL/PostgreSQL_select.md b/PostgreSQL/PostgreSQL_select.md index 122cead..545440f 100644 --- a/PostgreSQL/PostgreSQL_select.md +++ b/PostgreSQL/PostgreSQL_select.md @@ -8,13 +8,13 @@ ssh ivanov_i@10.101.1.3 ssh ivanov_i@10.201.1.3 -p 22 ``` -```sh +```shsudo mc psql -h 10.101.1.6 -U user_developer_igor_i -d transit ``` ```sh -psql -h 10.201.1.6 -U postgres -d transit +psql -h 10.201.3.36 -U postgres -d transit ``` ## Логи по Базе diff --git a/Ubuntu.md b/Ubuntu.md index 78a408d..54eb5bf 100644 --- a/Ubuntu.md +++ b/Ubuntu.md @@ -525,7 +525,7 @@ sudo sed -i 's/AllowOverride None/AllowOverride All/g' /etc/apache2/apache2.conf ``` ```sh - sudo a2enmod php8.0 + sudo a2enmod php8.1 sudo a2enmod ssl #Так как в последнее время делаю через haproxy то SSL в апачи не использую sudo a2enmod headers sudo a2enmod expires @@ -648,7 +648,7 @@ https://apache-windows.ru/apache-ssl-переход-apache-на-https/ sudo a2dissite jwt2.local.conf sudo a2dissite jwt.local.conf - + sudo a2dissite aistransit.kz.conf http://aistransit.kz/ @@ -969,6 +969,7 @@ DefaultRoot ~ ServerIdent on "FTP Server ready." RequireValidShell off AuthUserFile /etc/proftpd/ftpd.passwd +PassivePorts 40000 40100 Для создания нового виртуального пользователя "tester" "firsttester" в файле выполнить комманду (uid и gid должны быть как у пользователя www-data смотри: cat /etc/passwd и cat /etc/group)