Server side for codestep project
- Установить go
- Установить postgres
- Установить liquibase.
- Установить go-swagger: https://github.com/go-swagger/go-swagger
- Установить и настроить postgres - см. db/management
- Установить liquibase: https://docs.liquibase.com/start/install/liquibase-linux-debian-ubuntu.html
- Установить пакет сервера в /var/codestep/
- Задать параметры в server.conf
- Настроить сервис - см. service-script
- Чтобы можно было использовать 443 порт нужно выполнить sudo sysctl net.ipv4.ip_unprivileged_port_start=443 (см. https://stackoverflow.com/questions/413807/is-there-a-way-for-non-root-processes-to-bind-to-privileged-ports-on-linux)
-
Установить и настроить postgres - см. db/management
-
Установить Java
-
Установить liquibase: https://docs.liquibase.com/start/install/liquibase-linux-debian-ubuntu.html
-
Чтобы можно было использовать 443 порт нужно выполнить sudo sysctl net.ipv4.ip_unprivileged_port_start=443 (см. https://stackoverflow.com/questions/413807/is-there-a-way-for-non-root-processes-to-bind-to-privileged-ports-on-linux)
Но это до первого рестарта. Чтобы на постоянной основе задать значение параметра, нужно возможно
/etc/sysctl.d/10-network-security.conf
добавить строчку
net.ipv4.ip_unprivileged_port_start=443
Ещё можно выполнить
sudo ufw allow 22 sudo ufw allow 443/tcp sudo ufw enable
Но возможно ufw не требуется.
-
Установить codestep...amd64.deb
-
Задать параметры в server.conf
-
В /var/codestep/liquibase выполнить:
liquibase update
-
Рестартовать сервис:
sudo systemctl restart codestep
- Получить OAuth-токен, как написано здесь (он меняется редко, вроде бы раз в год):
https://yandex.cloud/ru/docs/iam/operations/iam-token/create#api_1
-
Как написано там же получить IAM-токен с помощью полученного на шаге 1 токена. Для этого использовать сохранённый POST-запрос в Postman. Идентификатор сертификата не должен меняться. Его можно скопировать, зайдя в сертификат в Яндекс-Облаке (в Certificate Manager).
-
Как написано здесь:
https://yandex.cloud/ru/docs/certificate-manager/api-ref/CertificateContent/get
сделать запрос (через Postman) и получить сертификат и секретный ключ. В качестве авторизационного Bearer-токена использовать токен, полученный на шаге 2.
- Скопировать из ответа цепочку сертификатов и вставить в файл code-step.pem (удалить кавычки, запятые, и перевести \n в переводы строк). Скопировать секретный ключ code-step-private-key.pem (выполнить аналогичные преобразования).
https://goswagger.io/use/spec.html https://medium.com/@pedram.esmaeeli/generate-swagger-specification-from-go-source-code-648615f7b9d9
http://go-database-sql.org/retrieving.html https://habr.com/ru/company/oleg-bunin/blog/461935/