Tested version & add :: Docs with container limit
This commit is contained in:
parent
be71b5ecdd
commit
4af28e1965
16
Dockerfile
16
Dockerfile
@ -14,11 +14,12 @@ RUN apt-get update && apt-get install -y \
|
||||
ca-certificates \
|
||||
openssh-server \
|
||||
apt-transport-https \
|
||||
make \
|
||||
software-properties-common
|
||||
|
||||
# Настраиваем sudo для пользователя
|
||||
RUN useradd -m -s /bin/bash user && \
|
||||
echo 'user:user' | chpasswd && \
|
||||
echo 'admin:admin' | chpasswd && \
|
||||
usermod -aG sudo user
|
||||
|
||||
# Устанавливаем пароль для пользователя root
|
||||
@ -26,17 +27,8 @@ RUN echo 'root:root' | chpasswd
|
||||
|
||||
# Настройка SSH-сервера
|
||||
RUN mkdir /var/run/sshd
|
||||
RUN echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
|
||||
RUN echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config
|
||||
|
||||
# Устанавливаем Docker
|
||||
RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - && \
|
||||
add-apt-repository \
|
||||
"deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" && \
|
||||
apt-get update && apt-get install -y docker-ce docker-ce-cli containerd.io
|
||||
|
||||
# Добавляем пользователя user в группу docker
|
||||
RUN usermod -aG docker user
|
||||
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
|
||||
RUN sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/' /etc/ssh/sshd_config
|
||||
|
||||
# Открываем порт SSH
|
||||
EXPOSE 22
|
||||
|
17
README.md
17
README.md
@ -1,4 +1,19 @@
|
||||
##### VSI - Virtual server infrastructure
|
||||
## VSI - Virtual server infrastructure
|
||||
WARN: Для данного репозитория необходим раннер!
|
||||
|
||||
В данном репозитории находиться конфигурация виртуальных серверов для поднятия через докер
|
||||
|
||||
|
||||
### Ручной запуск
|
||||
|
||||
``` sh
|
||||
$ docker compose up -d --force-recreate
|
||||
```
|
||||
|
||||
### Подключение к контейнерам
|
||||
|
||||
``` sh
|
||||
# root:root, * - определенный инстанс сервера \
|
||||
# ( от 1 до 3 как в докерфайле )
|
||||
$ ssh root@<server|"localhost"> -p 10*22
|
||||
```
|
@ -1,34 +1,69 @@
|
||||
version: '3'
|
||||
|
||||
networks:
|
||||
router-enter-code:
|
||||
|
||||
|
||||
|
||||
services:
|
||||
ubuntu_vm1:
|
||||
build: .
|
||||
container_name: ubuntu_vm1
|
||||
ports:
|
||||
- "10122:22" # Проброс порта для SSH
|
||||
- "0.0.0.0:10122:22"
|
||||
volumes:
|
||||
- vm1_data:/home/user/data
|
||||
tty: true
|
||||
networks:
|
||||
- router-enter-code
|
||||
stdin_open: true
|
||||
|
||||
ubuntu_vm2:
|
||||
build: .
|
||||
container_name: ubuntu_vm2
|
||||
ports:
|
||||
- "10222:22"
|
||||
volumes:
|
||||
- vm2_data:/home/user/data
|
||||
tty: true
|
||||
stdin_open: true
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '0.5' # Ограничение использования CPU (например, 50% от одного ядра)
|
||||
memory: 1024M # Ограничение использования памяти (1024 MB)
|
||||
reservations:
|
||||
cpus: '0.25' # Резервируем 25% одного ядра для контейнера
|
||||
memory: 512M # Резервируем 512 MB памяти для контейнера
|
||||
|
||||
ubuntu_vm3:
|
||||
build: .
|
||||
container_name:
|
||||
ports:
|
||||
- "10322:22"
|
||||
volumes:
|
||||
- vm3_data:/home/user/data
|
||||
tty: true
|
||||
stdin_open: true
|
||||
# ubuntu_vm2:
|
||||
# build: .
|
||||
# container_name: ubuntu_vm2
|
||||
# ports:
|
||||
# - "0.0.0.0:10222:22"
|
||||
# volumes:
|
||||
# - vm2_data:/home/user/data
|
||||
# tty: true
|
||||
# stdin_open: true
|
||||
|
||||
# deploy:
|
||||
# resources:
|
||||
# limits:
|
||||
# cpus: '0.5' # Ограничение использования CPU (например, 50% от одного ядра)
|
||||
# memory: 1024M # Ограничение использования памяти (1024 MB)
|
||||
# reservations:
|
||||
# cpus: '0.25' # Резервируем 25% одного ядра для контейнера
|
||||
# memory: 512M # Резервируем 512 MB памяти для контейнера
|
||||
|
||||
# ubuntu_vm3:
|
||||
# build: .
|
||||
# container_name: ubuntu_vm3
|
||||
# ports:
|
||||
# - "0.0.0.0:10322:22"
|
||||
# volumes:
|
||||
# - vm3_data:/home/user/data
|
||||
# tty: true
|
||||
# stdin_open: true
|
||||
|
||||
# deploy:
|
||||
# resources:
|
||||
# limits:
|
||||
# cpus: '0.5' # Ограничение использования CPU (например, 50% от одного ядра)
|
||||
# memory: 1024M # Ограничение использования памяти (1024 MB)
|
||||
# reservations:
|
||||
# cpus: '0.25' # Резервируем 25% одного ядра для контейнера
|
||||
# memory: 512M # Резервируем 512 MB памяти для контейнера
|
||||
|
||||
volumes:
|
||||
vm1_data:
|
||||
|
Loading…
Reference in New Issue
Block a user