Сейчас не так важно уже настраивать полностью сервера, когда достаточно добавить необходимых пользователей, установить докер и развернуть приложение. Ничего нового в этой статье особо нет, тут скорей как некая инструкция для быстрого старта.
Бывает что необходимо протестировать какое-нибудь приложение, но тестировать на своей рабочей машине не очень хочется, поэтому можно арендовать дешевый VDS сервер, поднять на нем свою машину, установить по-быстрому и протестировать. Один из хостингов, предоставляющих подобные услуги является HostVDS (ссылка партнерская). Создаем сервер, устанавливаем необходимое ПО и тестируем. В этой статье я опишу те команды, которые мне необходимы, чтобы запустить по-быстрому демо-сервис. В дальнейшем я планирую все это описать в например ansible или подобное, чтобы автоматизировать процесс. Хотя это не единственный вариант реализации подобной интерпретации.
Добавление пользователя
sudo useradd username
— добавление пользователя без создания домашнего каталога и установки пароляsudo passwd username
— установка пароля на созданного ранее пользователяsudo useradd username -m
или--create-home
добавление пользоваетля с созданием домашнего каталогаsudo adduser username
создание пользователя по шагам с созданием домашнего каталога и установкой пароля (в том числе добавление дополнительной необязательной информации по пользоавтелю)usermod -aG sudo username
— Добавление пользователя в группуsudoers
Установка Docker (из репозитория)
sudo apt-get update
— обновление списка репозитория- установка необходимым пакетов
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
-
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
— добавление ключа -
установка репозитория docker для x86_64/amd64. Для других типов можно посмотреть на сайте.
echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- Установка docker из репозитория.
sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo docker run hello-world
Проверка работоспособности docker. Должен вывести текст с "Hello from Docker!" и дополнительной инструкцией.
Установка docker-compose
- Для Linux необходимо выполнить команду
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- Дать права на файл docker-compose
sudo chmod +x /usr/local/bin/docker-compose
- Проверка что все работает успешно
docker-compose --version
Настройка прав docker, docker-compose
Чтобы docker, docker-compose запускать от имени пользователя и не нужно было для этого использова sudo, необходимо добавить всех в одну группу:
sudo groupadd docker
— добавить группу dockersudo gpasswd -a $USER docker
— добавить текущего пользователя в группу dockersudo service docker restart
— перезапустить сервис докера
Клонирование репозитория
cd /path/to/project
git clone path/to/repo.git
Запуск проекта
cd /path/to/project
git pull
docker-compose down && docker-compose up -d
Прокси, привязка доменного имени
Можно привязать доменное имя к выше созданному VDS. Можно через панель управления доменами, можно привязать доменное имя к серверу и управлять например с помощью nginx proxy manager
Источники
- How to Create Users in Linux (useradd Command) | Linuxize
- Install Docker Engine on Ubuntu | Docker Documentation
- Install Docker Compose | Docker Documentation
- guides/docker-without-sudo.md at main · sindresorhus/guides